public class org.jruby.RubyHash extends org.jruby.RubyObject implements java.util.Map
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.RubyHash
  super_class: org.jruby.RubyObject
{
  public static final int DEFAULT_INSPECT_STR_SIZE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 20

  public static final int COMPARE_BY_IDENTITY_F;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private static final org.jruby.runtime.ObjectAllocator HASH_ALLOCATOR;
    descriptor: Lorg/jruby/runtime/ObjectAllocator;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private org.jruby.RubyHash$RubyHashEntry[] table;
    descriptor: [Lorg/jruby/RubyHash$RubyHashEntry;
    flags: (0x0002) ACC_PRIVATE

  protected int size;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  private int threshold;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private static final int PROCDEFAULT_HASH_F;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private org.jruby.runtime.builtin.IRubyObject ifNone;
    descriptor: Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0002) ACC_PRIVATE

  public static final int[] MRI_PRIMES;
    descriptor: [I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private static final int JAVASOFT_INITIAL_CAPACITY;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  private static final int MRI_INITIAL_CAPACITY;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int INITIAL_THRESHOLD;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 6

  private static final int MAXIMUM_CAPACITY;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1073741824

  public static final org.jruby.RubyHash$RubyHashEntry NO_ENTRY;
    descriptor: Lorg/jruby/RubyHash$RubyHashEntry;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private int generation;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private final org.jruby.RubyHash$RubyHashEntry head;
    descriptor: Lorg/jruby/RubyHash$RubyHashEntry;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final int HASH_SIGN_BIT_MASK;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2147483647

  private static final int MIN_CAPA;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  private static final int ST_DEFAULT_MAX_DENSITY;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  private static final boolean MRI_HASH;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final boolean MRI_HASH_RESIZE;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final org.jruby.RubyHash$EntryMatchType MATCH_KEY;
    descriptor: Lorg/jruby/RubyHash$EntryMatchType;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.jruby.RubyHash$EntryMatchType MATCH_ENTRY;
    descriptor: Lorg/jruby/RubyHash$EntryMatchType;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.RubyString> InspectVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/RubyString;>;

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.RubyArray> StoreKeyValueVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/RubyArray;>;

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.RubyHash> FindMismatchUsingEqualVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/RubyHash;>;

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.RubyHash> FindMismatchUsingEqlVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/RubyHash;>;

  private static final org.jruby.RubyHash$VisitorWithState<long[]> CalculateHashVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<[J>;

  private static final org.jruby.RubyHash$Found FOUND;
    descriptor: Lorg/jruby/RubyHash$Found;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.runtime.builtin.IRubyObject> FoundIfEqualVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/runtime/builtin/IRubyObject;>;

  private volatile int iteratorCount;
    descriptor: I
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private static final java.util.concurrent.atomic.AtomicIntegerFieldUpdater<org.jruby.RubyHash> ITERATOR_UPDATER;
    descriptor: Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater<Lorg/jruby/RubyHash;>;

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.runtime.Block> YieldArrayVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/runtime/Block;>;

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.runtime.Block> YieldKeyValueArrayVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/runtime/Block;>;

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.runtime.Block> YieldValueVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/runtime/Block;>;

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.runtime.Block> YieldKeyVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/runtime/Block;>;

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.runtime.builtin.IRubyObject> FoundKeyIfEqual;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/runtime/builtin/IRubyObject;>;

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.RubyArray> StoreKeyVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/RubyArray;>;

  public static final org.jruby.RubyHash$VisitorWithState<org.jruby.RubyArray> StoreValueVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/RubyArray;>;

  static final org.jruby.RubyHash$VisitorWithState SetValueVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  private static final org.jruby.RubyHash$Mismatch MISMATCH;
    descriptor: Lorg/jruby/RubyHash$Mismatch;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.runtime.Block> DeleteIfVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/runtime/Block;>;

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.RubyHash> InvertVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/RubyHash;>;

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.RubyHash> ReplaceVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/RubyHash;>;

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.runtime.builtin.IRubyObject> FoundPairIfEqualKeyVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/runtime/builtin/IRubyObject;>;

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.runtime.builtin.IRubyObject> FoundPairIfEqualValueVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/runtime/builtin/IRubyObject;>;

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.runtime.marshal.MarshalStream> MarshalDumpVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/runtime/marshal/MarshalStream;>;

  private static final org.jruby.RubyHash$EntryView DIRECT_KEY_VIEW;
    descriptor: Lorg/jruby/RubyHash$EntryView;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.jruby.RubyHash$EntryView KEY_VIEW;
    descriptor: Lorg/jruby/RubyHash$EntryView;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.jruby.RubyHash$EntryView DIRECT_VALUE_VIEW;
    descriptor: Lorg/jruby/RubyHash$EntryView;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.jruby.RubyHash$EntryView VALUE_VIEW;
    descriptor: Lorg/jruby/RubyHash$EntryView;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.jruby.RubyHash$EntryView DIRECT_ENTRY_VIEW;
    descriptor: Lorg/jruby/RubyHash$EntryView;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.jruby.RubyHash$EntryView ENTRY_VIEW;
    descriptor: Lorg/jruby/RubyHash$EntryView;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=0
         0: .line 116
            ldc Lorg/jruby/RubyHash;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.jruby.RubyHash.$assertionsDisabled:Z
         3: .line 119
            getstatic org.jruby.ObjectFlags.COMPARE_BY_IDENTITY_F:I
            putstatic org.jruby.RubyHash.COMPARE_BY_IDENTITY_F:I
         4: .line 136
            new org.jruby.RubyHash$1
            dup
            invokespecial org.jruby.RubyHash$1.<init>:()V
            putstatic org.jruby.RubyHash.HASH_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
         5: .line 240
            getstatic org.jruby.ObjectFlags.PROCDEFAULT_HASH_F:I
            putstatic org.jruby.RubyHash.PROCDEFAULT_HASH_F:I
         6: .line 331
            bipush 29
            newarray 10
            dup
            iconst_0
         7: .line 332
            bipush 11
            iastore
            dup
            iconst_1
            bipush 19
            iastore
            dup
            iconst_2
            bipush 37
            iastore
            dup
            iconst_3
            bipush 67
            iastore
            dup
            iconst_4
            sipush 131
            iastore
            dup
            iconst_5
            sipush 283
            iastore
            dup
            bipush 6
            sipush 521
            iastore
            dup
            bipush 7
            sipush 1033
            iastore
            dup
            bipush 8
            sipush 2053
            iastore
            dup
            bipush 9
            sipush 4099
            iastore
            dup
            bipush 10
         8: .line 333
            sipush 8219
            iastore
            dup
            bipush 11
            sipush 16427
            iastore
            dup
            bipush 12
            ldc 32771
            iastore
            dup
            bipush 13
            ldc 65581
            iastore
            dup
            bipush 14
            ldc 131101
            iastore
            dup
            bipush 15
            ldc 262147
            iastore
            dup
            bipush 16
            ldc 524309
            iastore
            dup
            bipush 17
            ldc 1048583
            iastore
            dup
            bipush 18
         9: .line 334
            ldc 2097169
            iastore
            dup
            bipush 19
            ldc 4194319
            iastore
            dup
            bipush 20
            ldc 8388617
            iastore
            dup
            bipush 21
            ldc 16777259
            iastore
            dup
            bipush 22
            ldc 33554467
            iastore
            dup
            bipush 23
            ldc 67108879
            iastore
            dup
            bipush 24
        10: .line 335
            ldc 134217757
            iastore
            dup
            bipush 25
            ldc 268435459
            iastore
            dup
            bipush 26
            ldc 536870923
            iastore
            dup
            bipush 27
            ldc 1073741909
            iastore
        11: .line 331
            putstatic org.jruby.RubyHash.MRI_PRIMES:[I
        12: .line 339
            getstatic org.jruby.RubyHash.MRI_PRIMES:[I
            iconst_0
            iaload
            putstatic org.jruby.RubyHash.MRI_INITIAL_CAPACITY:I
        13: .line 344
            new org.jruby.RubyHash$RubyHashEntry
            dup
            invokespecial org.jruby.RubyHash$RubyHashEntry.<init>:()V
            putstatic org.jruby.RubyHash.NO_ENTRY:Lorg/jruby/RubyHash$RubyHashEntry;
        14: .line 645
            new org.jruby.RubyHash$2
            dup
            invokespecial org.jruby.RubyHash$2.<init>:()V
            putstatic org.jruby.RubyHash.MATCH_KEY:Lorg/jruby/RubyHash$EntryMatchType;
        15: .line 653
            new org.jruby.RubyHash$3
            dup
            invokespecial org.jruby.RubyHash$3.<init>:()V
            putstatic org.jruby.RubyHash.MATCH_ENTRY:Lorg/jruby/RubyHash$EntryMatchType;
        16: .line 851
            new org.jruby.RubyHash$4
            dup
            invokespecial org.jruby.RubyHash$4.<init>:()V
            putstatic org.jruby.RubyHash.InspectVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        17: .line 933
            new org.jruby.RubyHash$5
            dup
            invokespecial org.jruby.RubyHash$5.<init>:()V
            putstatic org.jruby.RubyHash.StoreKeyValueVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        18: .line 1110
            new org.jruby.RubyHash$6
            dup
            invokespecial org.jruby.RubyHash$6.<init>:()V
            putstatic org.jruby.RubyHash.FindMismatchUsingEqualVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        19: .line 1126
            new org.jruby.RubyHash$7
            dup
            invokespecial org.jruby.RubyHash$7.<init>:()V
            putstatic org.jruby.RubyHash.FindMismatchUsingEqlVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        20: .line 1226
            new org.jruby.RubyHash$8
            dup
            invokespecial org.jruby.RubyHash$8.<init>:()V
            putstatic org.jruby.RubyHash.CalculateHashVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        21: .line 1307
            new org.jruby.RubyHash$Found
            dup
            invokespecial org.jruby.RubyHash$Found.<init>:()V
            putstatic org.jruby.RubyHash.FOUND:Lorg/jruby/RubyHash$Found;
        22: .line 1334
            new org.jruby.RubyHash$9
            dup
            invokespecial org.jruby.RubyHash$9.<init>:()V
            putstatic org.jruby.RubyHash.FoundIfEqualVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        23: .line 1355
            aconst_null
            astore 0 /* iterUp */
        start local 0 // java.util.concurrent.atomic.AtomicIntegerFieldUpdater iterUp
        24: .line 1357
            ldc Lorg/jruby/RubyHash;
            ldc "iteratorCount"
            invokestatic java.util.concurrent.atomic.AtomicIntegerFieldUpdater.newUpdater:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
            astore 0 /* iterUp */
        25: .line 1358
            goto 27
      StackMap locals: java.util.concurrent.atomic.AtomicIntegerFieldUpdater
      StackMap stack: java.lang.Exception
        26: pop
        27: .line 1361
      StackMap locals:
      StackMap stack:
            aload 0 /* iterUp */
            putstatic org.jruby.RubyHash.ITERATOR_UPDATER:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
        end local 0 // java.util.concurrent.atomic.AtomicIntegerFieldUpdater iterUp
        28: .line 1406
            new org.jruby.RubyHash$10
            dup
            invokespecial org.jruby.RubyHash$10.<init>:()V
            putstatic org.jruby.RubyHash.YieldArrayVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        29: .line 1431
            new org.jruby.RubyHash$11
            dup
            invokespecial org.jruby.RubyHash$11.<init>:()V
            putstatic org.jruby.RubyHash.YieldKeyValueArrayVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        30: .line 1447
            new org.jruby.RubyHash$12
            dup
            invokespecial org.jruby.RubyHash$12.<init>:()V
            putstatic org.jruby.RubyHash.YieldValueVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        31: .line 1468
            new org.jruby.RubyHash$13
            dup
            invokespecial org.jruby.RubyHash$13.<init>:()V
            putstatic org.jruby.RubyHash.YieldKeyVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        32: .line 1617
            new org.jruby.RubyHash$14
            dup
            invokespecial org.jruby.RubyHash$14.<init>:()V
            putstatic org.jruby.RubyHash.FoundKeyIfEqual:Lorg/jruby/RubyHash$VisitorWithState;
        33: .line 1647
            new org.jruby.RubyHash$15
            dup
            invokespecial org.jruby.RubyHash$15.<init>:()V
            putstatic org.jruby.RubyHash.StoreKeyVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        34: .line 1675
            new org.jruby.RubyHash$16
            dup
            invokespecial org.jruby.RubyHash$16.<init>:()V
            putstatic org.jruby.RubyHash.StoreValueVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        35: .line 1683
            new org.jruby.RubyHash$17
            dup
            invokespecial org.jruby.RubyHash$17.<init>:()V
            putstatic org.jruby.RubyHash.SetValueVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        36: .line 1698
            new org.jruby.RubyHash$Mismatch
            dup
            invokespecial org.jruby.RubyHash$Mismatch.<init>:()V
            putstatic org.jruby.RubyHash.MISMATCH:Lorg/jruby/RubyHash$Mismatch;
        37: .line 1803
            new org.jruby.RubyHash$18
            dup
            invokespecial org.jruby.RubyHash$18.<init>:()V
            putstatic org.jruby.RubyHash.DeleteIfVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        38: .line 1889
            new org.jruby.RubyHash$19
            dup
            invokespecial org.jruby.RubyHash$19.<init>:()V
            putstatic org.jruby.RubyHash.InvertVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        39: .line 1981
            new org.jruby.RubyHash$20
            dup
            invokespecial org.jruby.RubyHash$20.<init>:()V
            putstatic org.jruby.RubyHash.ReplaceVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        40: .line 2029
            new org.jruby.RubyHash$21
            dup
            invokespecial org.jruby.RubyHash$21.<init>:()V
            putstatic org.jruby.RubyHash.FoundPairIfEqualKeyVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        41: .line 2038
            new org.jruby.RubyHash$22
            dup
            invokespecial org.jruby.RubyHash$22.<init>:()V
            putstatic org.jruby.RubyHash.FoundPairIfEqualValueVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        42: .line 2247
            new org.jruby.RubyHash$23
            dup
            invokespecial org.jruby.RubyHash$23.<init>:()V
            putstatic org.jruby.RubyHash.MarshalDumpVisitor:Lorg/jruby/RubyHash$VisitorWithState;
        43: .line 2522
            new org.jruby.RubyHash$24
            dup
            invokespecial org.jruby.RubyHash$24.<init>:()V
            putstatic org.jruby.RubyHash.DIRECT_KEY_VIEW:Lorg/jruby/RubyHash$EntryView;
        44: .line 2539
            new org.jruby.RubyHash$25
            dup
            invokespecial org.jruby.RubyHash$25.<init>:()V
            putstatic org.jruby.RubyHash.KEY_VIEW:Lorg/jruby/RubyHash$EntryView;
        45: .line 2554
            new org.jruby.RubyHash$26
            dup
            invokespecial org.jruby.RubyHash$26.<init>:()V
            putstatic org.jruby.RubyHash.DIRECT_VALUE_VIEW:Lorg/jruby/RubyHash$EntryView;
        46: .line 2575
            new org.jruby.RubyHash$27
            dup
            invokespecial org.jruby.RubyHash$27.<init>:()V
            putstatic org.jruby.RubyHash.VALUE_VIEW:Lorg/jruby/RubyHash$EntryView;
        47: .line 2594
            new org.jruby.RubyHash$28
            dup
            invokespecial org.jruby.RubyHash$28.<init>:()V
            putstatic org.jruby.RubyHash.DIRECT_ENTRY_VIEW:Lorg/jruby/RubyHash$EntryView;
        48: .line 2613
            new org.jruby.RubyHash$29
            dup
            invokespecial org.jruby.RubyHash$29.<init>:()V
            putstatic org.jruby.RubyHash.ENTRY_VIEW:Lorg/jruby/RubyHash$EntryView;
        49: .line 2631
            return
      LocalVariableTable:
        Start  End  Slot    Name  Signature
           24   28     0  iterUp  Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater<Lorg/jruby/RubyHash;>;
      Exception table:
        from    to  target  type
          24    25      26  Class java.lang.Exception

  public static org.jruby.RubyClass createHashClass(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyClass;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.jruby.Ruby runtime
         0: .line 122
            aload 0 /* runtime */
            ldc "Hash"
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
            getstatic org.jruby.RubyHash.HASH_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 /* hashc */
        start local 1 // org.jruby.RubyClass hashc
         1: .line 124
            aload 1 /* hashc */
            getstatic org.jruby.runtime.ClassIndex.HASH:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.RubyClass.setClassIndex:(Lorg/jruby/runtime/ClassIndex;)V
         2: .line 125
            aload 1 /* hashc */
            ldc Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyClass.setReifiedClass:(Ljava/lang/Class;)V
         3: .line 127
            aload 1 /* hashc */
            new org.jruby.RubyModule$JavaClassKindOf
            dup
            ldc Lorg/jruby/RubyHash;
            invokespecial org.jruby.RubyModule$JavaClassKindOf.<init>:(Ljava/lang/Class;)V
            putfield org.jruby.RubyClass.kindOf:Lorg/jruby/RubyModule$KindOf;
         4: .line 129
            aload 1 /* hashc */
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getEnumerable:()Lorg/jruby/RubyModule;
            invokevirtual org.jruby.RubyClass.includeModule:(Lorg/jruby/runtime/builtin/IRubyObject;)V
         5: .line 131
            aload 1 /* hashc */
            ldc Lorg/jruby/RubyHash;
            invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
         6: .line 133
            aload 1 /* hashc */
            areturn
        end local 1 // org.jruby.RubyClass hashc
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0  runtime  Lorg/jruby/Ruby;
            1    7     1    hashc  Lorg/jruby/RubyClass;
    MethodParameters:
         Name  Flags
      runtime  

  public org.jruby.runtime.ClassIndex getNativeClassIndex();
    descriptor: ()Lorg/jruby/runtime/ClassIndex;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 145
            getstatic org.jruby.runtime.ClassIndex.HASH:Lorg/jruby/runtime/ClassIndex;
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;

  public static org.jruby.runtime.builtin.IRubyObject create(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=15, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 3 // org.jruby.runtime.Block block
         0: .line 153
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         1: .line 155
            aload 2 /* args */
            arraylength
            iconst_1
            if_icmpne 29
         2: .line 156
            aload 2 /* args */
            iconst_0
            aaload
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getHash:()Lorg/jruby/RubyClass;
            ldc "to_hash"
            invokestatic org.jruby.util.TypeConverter.convertToTypeWithCheck:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 5 /* tmp */
        start local 5 // org.jruby.runtime.builtin.IRubyObject tmp
         3: .line 158
            aload 5 /* tmp */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 5
         4: .line 159
            new org.jruby.RubyHash
            dup
            aload 4 /* runtime */
            aload 1 /* recv */
            checkcast org.jruby.RubyClass
            aload 5 /* tmp */
            checkcast org.jruby.RubyHash
            invokespecial org.jruby.RubyHash.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Lorg/jruby/RubyHash;)V
            areturn
         5: .line 162
      StackMap locals: org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            astore 6 /* nil */
        start local 6 // org.jruby.runtime.builtin.IRubyObject nil
         6: .line 163
            aload 2 /* args */
            iconst_0
            aaload
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getArray:()Lorg/jruby/RubyClass;
            ldc "to_ary"
            invokestatic org.jruby.util.TypeConverter.convertToTypeWithCheck:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 5 /* tmp */
         7: .line 164
            aload 5 /* tmp */
            aload 6 /* nil */
            if_acmpeq 29
         8: .line 165
            aload 1 /* recv */
            checkcast org.jruby.RubyClass
            invokevirtual org.jruby.RubyClass.allocate:()Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyHash
            astore 7 /* hash */
        start local 7 // org.jruby.RubyHash hash
         9: .line 166
            aload 5 /* tmp */
            checkcast org.jruby.RubyArray
            astore 8 /* arr */
        start local 8 // org.jruby.RubyArray arr
        10: .line 167
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        11: aload 8 /* arr */
            invokevirtual org.jruby.RubyArray.getLength:()I
            istore 10 /* j */
        start local 10 // int j
        12: goto 27
        13: .line 168
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] org.jruby.runtime.Block org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.RubyHash org.jruby.RubyArray int int
      StackMap stack:
            aload 8 /* arr */
            iload 9 /* i */
            invokevirtual org.jruby.RubyArray.entry:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 11 /* e */
        start local 11 // org.jruby.runtime.builtin.IRubyObject e
        14: .line 169
            aload 11 /* e */
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getArray:()Lorg/jruby/RubyClass;
            ldc "to_ary"
            invokestatic org.jruby.util.TypeConverter.convertToTypeWithCheck:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 12 /* v */
        start local 12 // org.jruby.runtime.builtin.IRubyObject v
        15: .line 171
            aload 6 /* nil */
            astore 14 /* val */
        start local 14 // org.jruby.runtime.builtin.IRubyObject val
        16: .line 172
            aload 12 /* v */
            aload 6 /* nil */
            if_acmpne 21
        17: .line 173
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            new java.lang.StringBuilder
            dup
            ldc "wrong element type "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 11 /* e */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " at "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 9 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " (expected array)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.common.RubyWarnings.warn:(Ljava/lang/String;)V
        18: .line 174
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            ldc "ignoring wrong elements is deprecated, remove them explicitly"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Ljava/lang/String;)V
        19: .line 175
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            ldc "this causes ArgumentError in the next release"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Ljava/lang/String;)V
        20: .line 176
            goto 26
        21: .line 178
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] org.jruby.runtime.Block org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.RubyHash org.jruby.RubyArray int int org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject top org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 12 /* v */
            checkcast org.jruby.RubyArray
            invokevirtual org.jruby.RubyArray.getLength:()I
            tableswitch { // 1 - 2
                    1: 24
                    2: 23
              default: 22
          }
        22: .line 180
      StackMap locals:
      StackMap stack:
            aload 4 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "invalid number of elements ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 12 /* v */
            checkcast org.jruby.RubyArray
            invokevirtual org.jruby.RubyArray.getLength:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " for 1..2)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        23: .line 182
      StackMap locals:
      StackMap stack:
            aload 12 /* v */
            checkcast org.jruby.RubyArray
            iconst_1
            invokevirtual org.jruby.RubyArray.entry:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 14 /* val */
        24: .line 184
      StackMap locals:
      StackMap stack:
            aload 12 /* v */
            checkcast org.jruby.RubyArray
            iconst_0
            invokevirtual org.jruby.RubyArray.entry:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 13 /* key */
        start local 13 // org.jruby.runtime.builtin.IRubyObject key
        25: .line 185
            aload 7 /* hash */
            aload 4 /* runtime */
            aload 13 /* key */
            aload 14 /* val */
            invokevirtual org.jruby.RubyHash.fastASetCheckString:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
        end local 14 // org.jruby.runtime.builtin.IRubyObject val
        end local 13 // org.jruby.runtime.builtin.IRubyObject key
        end local 12 // org.jruby.runtime.builtin.IRubyObject v
        end local 11 // org.jruby.runtime.builtin.IRubyObject e
        26: .line 167
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] org.jruby.runtime.Block org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.RubyHash org.jruby.RubyArray int int
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        27: iload 9 /* i */
            iload 10 /* j */
            if_icmplt 13
        end local 10 // int j
        end local 9 // int i
        28: .line 188
            aload 7 /* hash */
            areturn
        end local 8 // org.jruby.RubyArray arr
        end local 7 // org.jruby.RubyHash hash
        end local 6 // org.jruby.runtime.builtin.IRubyObject nil
        end local 5 // org.jruby.runtime.builtin.IRubyObject tmp
        29: .line 192
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] org.jruby.runtime.Block org.jruby.Ruby
      StackMap stack:
            aload 2 /* args */
            arraylength
            iconst_1
            iand
            ifeq 31
        30: .line 193
            aload 4 /* runtime */
            ldc "odd number of arguments for Hash"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        31: .line 196
      StackMap locals:
      StackMap stack:
            aload 1 /* recv */
            checkcast org.jruby.RubyClass
            invokevirtual org.jruby.RubyClass.allocate:()Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyHash
            astore 5 /* hash */
        start local 5 // org.jruby.RubyHash hash
        32: .line 197
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        33: goto 35
      StackMap locals: org.jruby.RubyHash int
      StackMap stack:
        34: aload 5 /* hash */
            aload 4 /* runtime */
            aload 2 /* args */
            iload 6 /* i */
            aaload
            aload 2 /* args */
            iload 6 /* i */
            iconst_1
            iadd
            aaload
            invokevirtual org.jruby.RubyHash.fastASetCheckString:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
            iinc 6 /* i */ 2
      StackMap locals:
      StackMap stack:
        35: iload 6 /* i */
            aload 2 /* args */
            arraylength
            if_icmplt 34
        end local 6 // int i
        36: .line 199
            aload 5 /* hash */
            areturn
        end local 5 // org.jruby.RubyHash hash
        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.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   37     0  context  Lorg/jruby/runtime/ThreadContext;
            0   37     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0   37     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0   37     3    block  Lorg/jruby/runtime/Block;
            1   37     4  runtime  Lorg/jruby/Ruby;
            3   29     5      tmp  Lorg/jruby/runtime/builtin/IRubyObject;
            6   29     6      nil  Lorg/jruby/runtime/builtin/IRubyObject;
            9   29     7     hash  Lorg/jruby/RubyHash;
           10   29     8      arr  Lorg/jruby/RubyArray;
           11   28     9        i  I
           12   28    10        j  I
           14   26    11        e  Lorg/jruby/runtime/builtin/IRubyObject;
           15   26    12        v  Lorg/jruby/runtime/builtin/IRubyObject;
           25   26    13      key  Lorg/jruby/runtime/builtin/IRubyObject;
           16   26    14      val  Lorg/jruby/runtime/builtin/IRubyObject;
           32   37     5     hash  Lorg/jruby/RubyHash;
           33   36     6        i  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"[]"}, rest = true, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      args     
      block    

  public static org.jruby.runtime.builtin.IRubyObject try_convert(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/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject args
         0: .line 204
            aload 2 /* args */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getHash:()Lorg/jruby/RubyClass;
            ldc "to_hash"
            invokestatic org.jruby.util.TypeConverter.convertToTypeWithCheck:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject args
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2     args  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"try_convert"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      args     

  public static final org.jruby.RubyHash newHash(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.Ruby runtime
         0: .line 211
            new org.jruby.RubyHash
            dup
            aload 0 /* runtime */
            invokespecial org.jruby.RubyHash.<init>:(Lorg/jruby/Ruby;)V
            areturn
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
    MethodParameters:
         Name  Flags
      runtime  

  public static final org.jruby.RubyHash newSmallHash(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.Ruby runtime
         0: .line 218
            new org.jruby.RubyHash
            dup
            aload 0 /* runtime */
            iconst_1
            invokespecial org.jruby.RubyHash.<init>:(Lorg/jruby/Ruby;I)V
            areturn
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
    MethodParameters:
         Name  Flags
      runtime  

  public static org.jruby.RubyHash newKwargs(org.jruby.Ruby, java.lang.String, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.String key
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 222
            aload 0 /* runtime */
            invokestatic org.jruby.RubyHash.newSmallHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
            astore 3 /* kwargs */
        start local 3 // org.jruby.RubyHash kwargs
         1: .line 223
            aload 3 /* kwargs */
            aload 0 /* runtime */
            aload 1 /* key */
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aload 2 /* value */
            invokevirtual org.jruby.RubyHash.fastASetSmall:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         2: .line 224
            aload 3 /* kwargs */
            areturn
        end local 3 // org.jruby.RubyHash kwargs
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // java.lang.String key
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  runtime  Lorg/jruby/Ruby;
            0    3     1      key  Ljava/lang/String;
            0    3     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
            1    3     3   kwargs  Lorg/jruby/RubyHash;
    MethodParameters:
         Name  Flags
      runtime  
      key      
      value    

  public static final org.jruby.RubyHash newHash(org.jruby.Ruby, java.util.Map, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/Ruby;Ljava/util/Map;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.util.Map valueMap
        start local 2 // org.jruby.runtime.builtin.IRubyObject defaultValue
         0: .line 231
            getstatic org.jruby.RubyHash.$assertionsDisabled:Z
            ifne 1
            aload 2 /* defaultValue */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 233
      StackMap locals:
      StackMap stack:
            new org.jruby.RubyHash
            dup
            aload 0 /* runtime */
            aload 1 /* valueMap */
            aload 2 /* defaultValue */
            invokespecial org.jruby.RubyHash.<init>:(Lorg/jruby/Ruby;Ljava/util/Map;Lorg/jruby/runtime/builtin/IRubyObject;)V
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject defaultValue
        end local 1 // java.util.Map valueMap
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0       runtime  Lorg/jruby/Ruby;
            0    2     1      valueMap  Ljava/util/Map;
            0    2     2  defaultValue  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
              Name  Flags
      runtime       
      valueMap      
      defaultValue  

  private void <init>(org.jruby.Ruby, org.jruby.RubyClass, org.jruby.RubyHash);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Lorg/jruby/RubyHash;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.RubyClass klass
        start local 3 // org.jruby.RubyHash other
         0: .line 245
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* klass */
            invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
         1: .line 237
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyHash.size:I
         2: .line 345
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyHash.generation:I
         3: .line 346
            aload 0 /* this */
            new org.jruby.RubyHash$RubyHashEntry
            dup
            invokespecial org.jruby.RubyHash$RubyHashEntry.<init>:()V
            putfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
         4: .line 348
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            dup_x1
            putfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            putfield org.jruby.RubyHash$RubyHashEntry.prevAdded:Lorg/jruby/RubyHash$RubyHashEntry;
         5: .line 246
            aload 0 /* this */
            getstatic org.jruby.RubyHash.UNDEF:Lorg/jruby/runtime/builtin/IRubyObject;
            putfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
         6: .line 247
            aload 0 /* this */
            bipush 6
            putfield org.jruby.RubyHash.threshold:I
         7: .line 248
            aload 0 /* this */
            aload 3 /* other */
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            invokevirtual org.jruby.RubyHash.internalCopyTable:(Lorg/jruby/RubyHash$RubyHashEntry;)[Lorg/jruby/RubyHash$RubyHashEntry;
            putfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
         8: .line 249
            aload 0 /* this */
            aload 3 /* other */
            getfield org.jruby.RubyHash.size:I
            putfield org.jruby.RubyHash.size:I
         9: .line 250
            return
        end local 3 // org.jruby.RubyHash other
        end local 2 // org.jruby.RubyClass klass
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lorg/jruby/RubyHash;
            0   10     1  runtime  Lorg/jruby/Ruby;
            0   10     2    klass  Lorg/jruby/RubyClass;
            0   10     3    other  Lorg/jruby/RubyHash;
    MethodParameters:
         Name  Flags
      runtime  
      klass    
      other    

  public void <init>(org.jruby.Ruby, org.jruby.RubyClass);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.RubyClass klass
         0: .line 253
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* klass */
            invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
         1: .line 237
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyHash.size:I
         2: .line 345
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyHash.generation:I
         3: .line 346
            aload 0 /* this */
            new org.jruby.RubyHash$RubyHashEntry
            dup
            invokespecial org.jruby.RubyHash$RubyHashEntry.<init>:()V
            putfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
         4: .line 348
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            dup_x1
            putfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            putfield org.jruby.RubyHash$RubyHashEntry.prevAdded:Lorg/jruby/RubyHash$RubyHashEntry;
         5: .line 254
            aload 0 /* this */
            getstatic org.jruby.RubyHash.UNDEF:Lorg/jruby/runtime/builtin/IRubyObject;
            putfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
         6: .line 255
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.allocFirst:()V
         7: .line 256
            return
        end local 2 // org.jruby.RubyClass klass
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/RubyHash;
            0    8     1  runtime  Lorg/jruby/Ruby;
            0    8     2    klass  Lorg/jruby/RubyClass;
    MethodParameters:
         Name  Flags
      runtime  
      klass    

  public void <init>(org.jruby.Ruby, int);
    descriptor: (Lorg/jruby/Ruby;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // int buckets
         0: .line 259
            aload 0 /* this */
            aload 1 /* runtime */
            getstatic org.jruby.RubyHash.UNDEF:Lorg/jruby/runtime/builtin/IRubyObject;
            iload 2 /* buckets */
            invokespecial org.jruby.RubyHash.<init>:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;I)V
         1: .line 260
            return
        end local 2 // int buckets
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyHash;
            0    2     1  runtime  Lorg/jruby/Ruby;
            0    2     2  buckets  I
    MethodParameters:
         Name  Flags
      runtime  
      buckets  

  public void <init>(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
         0: .line 263
            aload 0 /* this */
            aload 1 /* runtime */
            getstatic org.jruby.RubyHash.UNDEF:Lorg/jruby/runtime/builtin/IRubyObject;
            invokespecial org.jruby.RubyHash.<init>:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)V
         1: .line 264
            return
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyHash;
            0    2     1  runtime  Lorg/jruby/Ruby;
    MethodParameters:
         Name  Flags
      runtime  

  public void <init>(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.runtime.builtin.IRubyObject defaultValue
         0: .line 267
            aload 0 /* this */
            aload 1 /* runtime */
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getHash:()Lorg/jruby/RubyClass;
            invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
         1: .line 237
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyHash.size:I
         2: .line 345
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyHash.generation:I
         3: .line 346
            aload 0 /* this */
            new org.jruby.RubyHash$RubyHashEntry
            dup
            invokespecial org.jruby.RubyHash$RubyHashEntry.<init>:()V
            putfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
         4: .line 348
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            dup_x1
            putfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            putfield org.jruby.RubyHash$RubyHashEntry.prevAdded:Lorg/jruby/RubyHash$RubyHashEntry;
         5: .line 268
            aload 0 /* this */
            aload 2 /* defaultValue */
            putfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
         6: .line 269
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.allocFirst:()V
         7: .line 270
            return
        end local 2 // org.jruby.runtime.builtin.IRubyObject defaultValue
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    8     0          this  Lorg/jruby/RubyHash;
            0    8     1       runtime  Lorg/jruby/Ruby;
            0    8     2  defaultValue  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
              Name  Flags
      runtime       
      defaultValue  

  public void <init>(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, int);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.runtime.builtin.IRubyObject defaultValue
        start local 3 // int buckets
         0: .line 273
            aload 0 /* this */
            aload 1 /* runtime */
            iload 3 /* buckets */
            iconst_1
            invokespecial org.jruby.RubyHash.<init>:(Lorg/jruby/Ruby;IZ)V
         1: .line 274
            aload 0 /* this */
            aload 2 /* defaultValue */
            putfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
         2: .line 275
            return
        end local 3 // int buckets
        end local 2 // org.jruby.runtime.builtin.IRubyObject defaultValue
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lorg/jruby/RubyHash;
            0    3     1       runtime  Lorg/jruby/Ruby;
            0    3     2  defaultValue  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     3       buckets  I
    MethodParameters:
              Name  Flags
      runtime       
      defaultValue  
      buckets       

  protected void <init>(org.jruby.Ruby, org.jruby.RubyClass, org.jruby.runtime.builtin.IRubyObject, org.jruby.RubyHash$RubyHashEntry[], int);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/RubyHash$RubyHashEntry;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=6, args_size=6
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.RubyClass metaClass
        start local 3 // org.jruby.runtime.builtin.IRubyObject defaultValue
        start local 4 // org.jruby.RubyHash$RubyHashEntry[] initialTable
        start local 5 // int threshold
         0: .line 278
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* metaClass */
            invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
         1: .line 237
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyHash.size:I
         2: .line 345
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyHash.generation:I
         3: .line 346
            aload 0 /* this */
            new org.jruby.RubyHash$RubyHashEntry
            dup
            invokespecial org.jruby.RubyHash$RubyHashEntry.<init>:()V
            putfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
         4: .line 348
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            dup_x1
            putfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            putfield org.jruby.RubyHash$RubyHashEntry.prevAdded:Lorg/jruby/RubyHash$RubyHashEntry;
         5: .line 279
            aload 0 /* this */
            aload 3 /* defaultValue */
            putfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
         6: .line 280
            aload 0 /* this */
            iload 5 /* threshold */
            putfield org.jruby.RubyHash.threshold:I
         7: .line 281
            aload 0 /* this */
            aload 4 /* initialTable */
            putfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
         8: .line 282
            return
        end local 5 // int threshold
        end local 4 // org.jruby.RubyHash$RubyHashEntry[] initialTable
        end local 3 // org.jruby.runtime.builtin.IRubyObject defaultValue
        end local 2 // org.jruby.RubyClass metaClass
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0          this  Lorg/jruby/RubyHash;
            0    9     1       runtime  Lorg/jruby/Ruby;
            0    9     2     metaClass  Lorg/jruby/RubyClass;
            0    9     3  defaultValue  Lorg/jruby/runtime/builtin/IRubyObject;
            0    9     4  initialTable  [Lorg/jruby/RubyHash$RubyHashEntry;
            0    9     5     threshold  I
    MethodParameters:
              Name  Flags
      runtime       
      metaClass     
      defaultValue  
      initialTable  
      threshold     

  void <init>(org.jruby.Ruby, int, boolean);
    descriptor: (Lorg/jruby/Ruby;IZ)V
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // int buckets
        start local 3 // boolean objectSpace
         0: .line 289
            aload 0 /* this */
            aload 1 /* runtime */
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getHash:()Lorg/jruby/RubyClass;
            iload 3 /* objectSpace */
            invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Z)V
         1: .line 237
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyHash.size:I
         2: .line 345
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyHash.generation:I
         3: .line 346
            aload 0 /* this */
            new org.jruby.RubyHash$RubyHashEntry
            dup
            invokespecial org.jruby.RubyHash$RubyHashEntry.<init>:()V
            putfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
         4: .line 348
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            dup_x1
            putfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            putfield org.jruby.RubyHash$RubyHashEntry.prevAdded:Lorg/jruby/RubyHash$RubyHashEntry;
         5: .line 292
            iload 2 /* buckets */
            ifgt 6
            iconst_1
            istore 2 /* buckets */
         6: .line 293
      StackMap locals: org.jruby.RubyHash org.jruby.Ruby int int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* buckets */
            invokevirtual org.jruby.RubyHash.allocFirst:(I)V
         7: .line 294
            return
        end local 3 // boolean objectSpace
        end local 2 // int buckets
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lorg/jruby/RubyHash;
            0    8     1      runtime  Lorg/jruby/Ruby;
            0    8     2      buckets  I
            0    8     3  objectSpace  Z
    MethodParameters:
             Name  Flags
      runtime      
      buckets      
      objectSpace  

  public void <init>(org.jruby.Ruby, java.util.Map, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/Ruby;Ljava/util/Map;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // java.util.Map valueMap
        start local 3 // org.jruby.runtime.builtin.IRubyObject defaultValue
         0: .line 298
            aload 0 /* this */
            aload 1 /* runtime */
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getHash:()Lorg/jruby/RubyClass;
            invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
         1: .line 237
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyHash.size:I
         2: .line 345
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyHash.generation:I
         3: .line 346
            aload 0 /* this */
            new org.jruby.RubyHash$RubyHashEntry
            dup
            invokespecial org.jruby.RubyHash$RubyHashEntry.<init>:()V
            putfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
         4: .line 348
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            dup_x1
            putfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            putfield org.jruby.RubyHash$RubyHashEntry.prevAdded:Lorg/jruby/RubyHash$RubyHashEntry;
         5: .line 299
            aload 0 /* this */
            aload 3 /* defaultValue */
            putfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
         6: .line 300
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.allocFirst:()V
         7: .line 302
            aload 2 /* valueMap */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4 /* iter */
        start local 4 // java.util.Iterator iter
         8: goto 11
         9: .line 303
      StackMap locals: org.jruby.RubyHash org.jruby.Ruby java.util.Map org.jruby.runtime.builtin.IRubyObject java.util.Iterator
      StackMap stack:
            aload 4 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 5 /* e */
        start local 5 // java.util.Map$Entry e
        10: .line 304
            aload 0 /* this */
            aload 5 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            aload 5 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            invokevirtual org.jruby.RubyHash.internalPut:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        end local 5 // java.util.Map$Entry e
        11: .line 302
      StackMap locals:
      StackMap stack:
            aload 4 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        end local 4 // java.util.Iterator iter
        12: .line 306
            return
        end local 3 // org.jruby.runtime.builtin.IRubyObject defaultValue
        end local 2 // java.util.Map valueMap
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   13     0          this  Lorg/jruby/RubyHash;
            0   13     1       runtime  Lorg/jruby/Ruby;
            0   13     2      valueMap  Ljava/util/Map;
            0   13     3  defaultValue  Lorg/jruby/runtime/builtin/IRubyObject;
            8   12     4          iter  Ljava/util/Iterator;
           10   11     5             e  Ljava/util/Map$Entry;
    MethodParameters:
              Name  Flags
      runtime       
      valueMap      
      defaultValue  

  private final void allocFirst();
    descriptor: ()V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 309
            aload 0 /* this */
            bipush 6
            putfield org.jruby.RubyHash.threshold:I
         1: .line 310
            aload 0 /* this */
            getstatic org.jruby.RubyHash.MRI_INITIAL_CAPACITY:I
            anewarray org.jruby.RubyHash$RubyHashEntry
            putfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
         2: .line 311
            return
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/RubyHash;

  private final void allocFirst(int);
    descriptor: (I)V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // int buckets
         0: .line 314
            iload 1 /* buckets */
            ifgt 1
            new java.lang.ArrayIndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "invalid bucket size: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* buckets */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         1: .line 315
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 6
            putfield org.jruby.RubyHash.threshold:I
         2: .line 316
            aload 0 /* this */
            iload 1 /* buckets */
            anewarray org.jruby.RubyHash$RubyHashEntry
            putfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
         3: .line 317
            return
        end local 1 // int buckets
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyHash;
            0    4     1  buckets  I
    MethodParameters:
         Name  Flags
      buckets  

  private final void alloc();
    descriptor: ()V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 320
            aload 0 /* this */
            dup
            getfield org.jruby.RubyHash.generation:I
            iconst_1
            iadd
            putfield org.jruby.RubyHash.generation:I
         1: .line 321
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            dup_x1
            putfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            putfield org.jruby.RubyHash$RubyHashEntry.prevAdded:Lorg/jruby/RubyHash$RubyHashEntry;
         2: .line 322
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.allocFirst:()V
         3: .line 323
            return
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/jruby/RubyHash;

  private static int JavaSoftHashValue(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // int h
         0: .line 427
            iload 0 /* h */
            iload 0 /* h */
            bipush 20
            iushr
            iload 0 /* h */
            bipush 12
            iushr
            ixor
            ixor
            istore 0 /* h */
         1: .line 428
            iload 0 /* h */
            iload 0 /* h */
            bipush 7
            iushr
            ixor
            iload 0 /* h */
            iconst_4
            iushr
            ixor
            ireturn
        end local 0 // int h
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     h  I
    MethodParameters:
      Name  Flags
      h     

  private static int JavaSoftBucketIndex(int, int);
    descriptor: (II)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // int h
        start local 1 // int length
         0: .line 432
            iload 0 /* h */
            iload 1 /* length */
            iconst_1
            isub
            iand
            ireturn
        end local 1 // int length
        end local 0 // int h
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0       h  I
            0    1     1  length  I
    MethodParameters:
        Name  Flags
      h       final
      length  final

  private static int MRIHashValue(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int h
         0: .line 436
            iload 0 /* h */
            ldc 2147483647
            iand
            ireturn
        end local 0 // int h
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     h  I
    MethodParameters:
      Name  Flags
      h     

  private static int MRIBucketIndex(int, int);
    descriptor: (II)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int h
        start local 1 // int length
         0: .line 441
            iload 0 /* h */
            ldc 2147483647
            iand
            iload 1 /* length */
            irem
            ireturn
        end local 1 // int length
        end local 0 // int h
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0       h  I
            0    1     1  length  I
    MethodParameters:
        Name  Flags
      h       final
      length  final

  private final synchronized void resize(int);
    descriptor: (I)V
    flags: (0x0032) ACC_PRIVATE, ACC_FINAL, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=8, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // int newCapacity
         0: .line 445
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            astore 2 /* oldTable */
        start local 2 // org.jruby.RubyHash$RubyHashEntry[] oldTable
         1: .line 446
            iload 1 /* newCapacity */
            anewarray org.jruby.RubyHash$RubyHashEntry
            astore 3 /* newTable */
        start local 3 // org.jruby.RubyHash$RubyHashEntry[] newTable
         2: .line 448
            iconst_0
            istore 4 /* j */
        start local 4 // int j
         3: goto 14
         4: .line 449
      StackMap locals: org.jruby.RubyHash$RubyHashEntry[] org.jruby.RubyHash$RubyHashEntry[] int
      StackMap stack:
            aload 2 /* oldTable */
            iload 4 /* j */
            aaload
            astore 5 /* entry */
        start local 5 // org.jruby.RubyHash$RubyHashEntry entry
         5: .line 450
            aload 2 /* oldTable */
            iload 4 /* j */
            aconst_null
            aastore
         6: .line 452
            goto 12
         7: .line 453
      StackMap locals: org.jruby.RubyHash$RubyHashEntry
      StackMap stack:
            aload 5 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.next:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 6 /* next */
        start local 6 // org.jruby.RubyHash$RubyHashEntry next
         8: .line 454
            aload 5 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.hash:I
            iload 1 /* newCapacity */
            invokestatic org.jruby.RubyHash.bucketIndex:(II)I
            istore 7 /* i */
        start local 7 // int i
         9: .line 455
            aload 5 /* entry */
            aload 3 /* newTable */
            iload 7 /* i */
            aaload
            putfield org.jruby.RubyHash$RubyHashEntry.next:Lorg/jruby/RubyHash$RubyHashEntry;
        10: .line 456
            aload 3 /* newTable */
            iload 7 /* i */
            aload 5 /* entry */
            aastore
        11: .line 457
            aload 6 /* next */
            astore 5 /* entry */
        end local 7 // int i
        end local 6 // org.jruby.RubyHash$RubyHashEntry next
        12: .line 452
      StackMap locals:
      StackMap stack:
            aload 5 /* entry */
            ifnonnull 7
        end local 5 // org.jruby.RubyHash$RubyHashEntry entry
        13: .line 448
            iinc 4 /* j */ 1
      StackMap locals:
      StackMap stack:
        14: iload 4 /* j */
            aload 2 /* oldTable */
            arraylength
            if_icmplt 4
        end local 4 // int j
        15: .line 461
            aload 0 /* this */
            aload 3 /* newTable */
            putfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
        16: .line 462
            return
        end local 3 // org.jruby.RubyHash$RubyHashEntry[] newTable
        end local 2 // org.jruby.RubyHash$RubyHashEntry[] oldTable
        end local 1 // int newCapacity
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   17     0         this  Lorg/jruby/RubyHash;
            0   17     1  newCapacity  I
            1   17     2     oldTable  [Lorg/jruby/RubyHash$RubyHashEntry;
            2   17     3     newTable  [Lorg/jruby/RubyHash$RubyHashEntry;
            3   15     4            j  I
            5   13     5        entry  Lorg/jruby/RubyHash$RubyHashEntry;
            8   12     6         next  Lorg/jruby/RubyHash$RubyHashEntry;
            9   12     7            i  I
    MethodParameters:
             Name  Flags
      newCapacity  

  private final void JavaSoftCheckResize();
    descriptor: ()V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 465
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.overThreshold:()Z
            ifeq 6
         1: .line 466
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            astore 1 /* tbl */
        start local 1 // org.jruby.RubyHash$RubyHashEntry[] tbl
         2: .line 467
            aload 1 /* tbl */
            arraylength
            ldc 1073741824
            if_icmpne 5
         3: .line 468
            aload 0 /* this */
            ldc 2147483647
            putfield org.jruby.RubyHash.threshold:I
         4: .line 469
            return
         5: .line 471
      StackMap locals: org.jruby.RubyHash$RubyHashEntry[]
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            invokevirtual org.jruby.RubyHash.resizeAndAdjustThreshold:([Lorg/jruby/RubyHash$RubyHashEntry;)V
        end local 1 // org.jruby.RubyHash$RubyHashEntry[] tbl
         6: .line 473
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/jruby/RubyHash;
            2    6     1   tbl  [Lorg/jruby/RubyHash$RubyHashEntry;

  private boolean overThreshold();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 476
            aload 0 /* this */
            getfield org.jruby.RubyHash.size:I
            aload 0 /* this */
            getfield org.jruby.RubyHash.threshold:I
            if_icmple 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyHash;

  private void resizeAndAdjustThreshold(org.jruby.RubyHash$RubyHashEntry[]);
    descriptor: ([Lorg/jruby/RubyHash$RubyHashEntry;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.RubyHash$RubyHashEntry[] oldTable
         0: .line 480
            aload 1 /* oldTable */
            arraylength
            iconst_1
            ishl
            istore 2 /* newCapacity */
        start local 2 // int newCapacity
         1: .line 481
            aload 0 /* this */
            iload 2 /* newCapacity */
            invokevirtual org.jruby.RubyHash.resize:(I)V
         2: .line 482
            aload 0 /* this */
            iload 2 /* newCapacity */
            iload 2 /* newCapacity */
            iconst_2
            ishr
            isub
            putfield org.jruby.RubyHash.threshold:I
         3: .line 483
            return
        end local 2 // int newCapacity
        end local 1 // org.jruby.RubyHash$RubyHashEntry[] oldTable
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/jruby/RubyHash;
            0    4     1     oldTable  [Lorg/jruby/RubyHash$RubyHashEntry;
            1    4     2  newCapacity  I
    MethodParameters:
          Name  Flags
      oldTable  

  private final void MRICheckResize();
    descriptor: ()V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 488
            aload 0 /* this */
            getfield org.jruby.RubyHash.size:I
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            arraylength
            idiv
            iconst_5
            if_icmple 11
         1: .line 489
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            arraylength
            iconst_1
            iadd
            istore 1 /* forSize */
        start local 1 // int forSize
         2: .line 490
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: bipush 8
            istore 3 /* newCapacity */
        start local 3 // int newCapacity
         4: goto 9
         5: .line 491
      StackMap locals: int int int
      StackMap stack:
            iload 3 /* newCapacity */
            iload 1 /* forSize */
            if_icmple 8
         6: .line 492
            aload 0 /* this */
            getstatic org.jruby.RubyHash.MRI_PRIMES:[I
            iload 2 /* i */
            iaload
            invokevirtual org.jruby.RubyHash.resize:(I)V
         7: .line 493
            return
         8: .line 490
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
            iload 3 /* newCapacity */
            iconst_1
            ishl
            istore 3 /* newCapacity */
      StackMap locals:
      StackMap stack:
         9: iload 2 /* i */
            getstatic org.jruby.RubyHash.MRI_PRIMES:[I
            arraylength
            if_icmplt 5
        end local 3 // int newCapacity
        end local 2 // int i
        10: .line 496
            return
        end local 1 // int forSize
        11: .line 498
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0         this  Lorg/jruby/RubyHash;
            2   11     1      forSize  I
            3   10     2            i  I
            4   10     3  newCapacity  I

  protected final int hashValue(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=1, locals=3, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
         0: .line 504
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.isComparedByIdentity:()Z
            ifeq 1
            aload 1 /* key */
            invokestatic java.lang.System.identityHashCode:(Ljava/lang/Object;)I
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* key */
            invokevirtual java.lang.Object.hashCode:()I
      StackMap locals:
      StackMap stack: int
         2: istore 2 /* h */
        start local 2 // int h
         3: .line 505
            iload 2 /* h */
            invokestatic org.jruby.RubyHash.MRIHashValue:(I)I
            ireturn
        end local 2 // int h
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/jruby/RubyHash;
            0    4     1   key  Lorg/jruby/runtime/builtin/IRubyObject;
            3    4     2     h  I
    MethodParameters:
      Name  Flags
      key   final

  private static int bucketIndex(int, int);
    descriptor: (II)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int h
        start local 1 // int length
         0: .line 509
            iload 0 /* h */
            iload 1 /* length */
            invokestatic org.jruby.RubyHash.MRIBucketIndex:(II)I
            ireturn
        end local 1 // int length
        end local 0 // int h
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0       h  I
            0    1     1  length  I
    MethodParameters:
        Name  Flags
      h       final
      length  final

  private void checkResize();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 513
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.MRICheckResize:()V
         1: .line 514
            return
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyHash;

  protected final void checkIterating();
    descriptor: ()V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 517
            aload 0 /* this */
            getfield org.jruby.RubyHash.iteratorCount:I
            ifle 2
         1: .line 518
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            ldc "can't add a new key into hash during iteration"
            invokevirtual org.jruby.Ruby.newRuntimeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         2: .line 520
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/RubyHash;

  public org.jruby.runtime.builtin.IRubyObject internalPut(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=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 525
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.checkResize:()V
         1: .line 526
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* value */
            iconst_1
            invokevirtual org.jruby.RubyHash.internalPutNoResize:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jruby/RubyHash;
            0    2     1    key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     2  value  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
       Name  Flags
      key    final
      value  final

  private void internalPutSmall(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 530
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* value */
            iconst_1
            invokevirtual org.jruby.RubyHash.internalPutNoResize:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         1: .line 531
            return
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jruby/RubyHash;
            0    2     1    key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     2  value  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
       Name  Flags
      key    final
      value  final

  private void internalPut(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, boolean);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
        start local 3 // boolean checkForExisting
         0: .line 534
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.checkResize:()V
         1: .line 535
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* value */
            iload 3 /* checkForExisting */
            invokevirtual org.jruby.RubyHash.internalPutNoResize:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         2: .line 536
            return
        end local 3 // boolean checkForExisting
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Lorg/jruby/RubyHash;
            0    3     1               key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     2             value  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     3  checkForExisting  Z
    MethodParameters:
                  Name  Flags
      key               final
      value             final
      checkForExisting  final

  final boolean internalPutIfNoKey(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Z
    flags: (0x0010) ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 539
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual org.jruby.RubyHash.internalGetEntry:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash$RubyHashEntry;
            getstatic org.jruby.RubyHash.NO_ENTRY:Lorg/jruby/RubyHash$RubyHashEntry;
            if_acmpne 3
         1: .line 540
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* value */
            invokevirtual org.jruby.RubyHash.internalPut:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         2: .line 541
            iconst_1
            ireturn
         3: .line 543
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/jruby/RubyHash;
            0    4     1    key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     2  value  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
       Name  Flags
      key    final
      value  final

  protected final org.jruby.runtime.builtin.IRubyObject internalJavaPut(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: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 548
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.checkResize:()V
         1: .line 550
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* value */
            iconst_1
            invokevirtual org.jruby.RubyHash.internalPutNoResize:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jruby/RubyHash;
            0    2     1    key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     2  value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
       Name  Flags
      key    final
      value  final

  protected org.jruby.runtime.builtin.IRubyObject internalPutNoResize(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, boolean);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=9, locals=8, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
        start local 3 // boolean checkForExisting
         0: .line 554
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual org.jruby.RubyHash.hashValue:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            istore 4 /* hash */
        start local 4 // int hash
         1: .line 555
            iload 4 /* hash */
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            arraylength
            invokestatic org.jruby.RubyHash.bucketIndex:(II)I
            istore 5 /* i */
        start local 5 // int i
         2: .line 557
            iload 3 /* checkForExisting */
            ifeq 11
         3: .line 558
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            iload 5 /* i */
            aaload
            astore 6 /* entry */
        start local 6 // org.jruby.RubyHash$RubyHashEntry entry
         4: goto 10
         5: .line 559
      StackMap locals: int int org.jruby.RubyHash$RubyHashEntry
      StackMap stack:
            aload 0 /* this */
            aload 6 /* entry */
            iload 4 /* hash */
            aload 1 /* key */
            invokevirtual org.jruby.RubyHash.internalKeyExist:(Lorg/jruby/RubyHash$RubyHashEntry;ILorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 9
         6: .line 560
            aload 6 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.value:Lorg/jruby/runtime/builtin/IRubyObject;
            astore 7 /* existing */
        start local 7 // org.jruby.runtime.builtin.IRubyObject existing
         7: .line 561
            aload 6 /* entry */
            aload 2 /* value */
            putfield org.jruby.RubyHash$RubyHashEntry.value:Lorg/jruby/runtime/builtin/IRubyObject;
         8: .line 563
            aload 7 /* existing */
            areturn
        end local 7 // org.jruby.runtime.builtin.IRubyObject existing
         9: .line 558
      StackMap locals:
      StackMap stack:
            aload 6 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.next:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 6 /* entry */
      StackMap locals:
      StackMap stack:
        10: aload 6 /* entry */
            ifnonnull 5
        end local 6 // org.jruby.RubyHash$RubyHashEntry entry
        11: .line 568
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.checkIterating:()V
        12: .line 570
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            iload 5 /* i */
            new org.jruby.RubyHash$RubyHashEntry
            dup
            iload 4 /* hash */
            aload 1 /* key */
            aload 2 /* value */
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            iload 5 /* i */
            aaload
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            invokespecial org.jruby.RubyHash$RubyHashEntry.<init>:(ILorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyHash$RubyHashEntry;Lorg/jruby/RubyHash$RubyHashEntry;)V
            aastore
        13: .line 571
            aload 0 /* this */
            dup
            getfield org.jruby.RubyHash.size:I
            iconst_1
            iadd
            putfield org.jruby.RubyHash.size:I
        14: .line 574
            aconst_null
            areturn
        end local 5 // int i
        end local 4 // int hash
        end local 3 // boolean checkForExisting
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   15     0              this  Lorg/jruby/RubyHash;
            0   15     1               key  Lorg/jruby/runtime/builtin/IRubyObject;
            0   15     2             value  Lorg/jruby/runtime/builtin/IRubyObject;
            0   15     3  checkForExisting  Z
            1   15     4              hash  I
            2   15     5                 i  I
            4   11     6             entry  Lorg/jruby/RubyHash$RubyHashEntry;
            7    9     7          existing  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
                  Name  Flags
      key               final
      value             final
      checkForExisting  final

  protected org.jruby.runtime.builtin.IRubyObject internalGet(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
         0: .line 580
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual org.jruby.RubyHash.internalGetEntry:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash$RubyHashEntry;
            getfield org.jruby.RubyHash$RubyHashEntry.value:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;
            0    1     1   key  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      key   

  protected org.jruby.RubyHash$RubyHashEntry internalGetEntry(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash$RubyHashEntry;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
         0: .line 584
            aload 0 /* this */
            getfield org.jruby.RubyHash.size:I
            ifne 1
            getstatic org.jruby.RubyHash.NO_ENTRY:Lorg/jruby/RubyHash$RubyHashEntry;
            areturn
         1: .line 586
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual org.jruby.RubyHash.hashValue:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            istore 2 /* hash */
        start local 2 // int hash
         2: .line 587
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            iload 2 /* hash */
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            arraylength
            invokestatic org.jruby.RubyHash.bucketIndex:(II)I
            aaload
            astore 3 /* entry */
        start local 3 // org.jruby.RubyHash$RubyHashEntry entry
         3: goto 7
         4: .line 588
      StackMap locals: int org.jruby.RubyHash$RubyHashEntry
      StackMap stack:
            aload 0 /* this */
            aload 3 /* entry */
            iload 2 /* hash */
            aload 1 /* key */
            invokevirtual org.jruby.RubyHash.internalKeyExist:(Lorg/jruby/RubyHash$RubyHashEntry;ILorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 6
         5: .line 589
            aload 3 /* entry */
            areturn
         6: .line 587
      StackMap locals:
      StackMap stack:
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.next:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 3 /* entry */
      StackMap locals:
      StackMap stack:
         7: aload 3 /* entry */
            ifnonnull 4
        end local 3 // org.jruby.RubyHash$RubyHashEntry entry
         8: .line 592
            getstatic org.jruby.RubyHash.NO_ENTRY:Lorg/jruby/RubyHash$RubyHashEntry;
            areturn
        end local 2 // int hash
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Lorg/jruby/RubyHash;
            0    9     1    key  Lorg/jruby/runtime/builtin/IRubyObject;
            2    9     2   hash  I
            3    8     3  entry  Lorg/jruby/RubyHash$RubyHashEntry;
    MethodParameters:
      Name  Flags
      key   

  final org.jruby.RubyHash$RubyHashEntry getEntry(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash$RubyHashEntry;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
         0: .line 596
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual org.jruby.RubyHash.internalGetEntry:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash$RubyHashEntry;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;
            0    1     1   key  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      key   

  private boolean internalKeyExist(org.jruby.RubyHash$RubyHashEntry, int, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/RubyHash$RubyHashEntry;ILorg/jruby/runtime/builtin/IRubyObject;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.RubyHash$RubyHashEntry entry
        start local 2 // int hash
        start local 3 // org.jruby.runtime.builtin.IRubyObject key
         0: .line 600
            aload 1 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.hash:I
            iload 2 /* hash */
            if_icmpne 3
         1: .line 601
            aload 1 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.key:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 3 /* key */
            if_acmpeq 2
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.isComparedByIdentity:()Z
            ifne 3
            aload 3 /* key */
            aload 1 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.key:Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.eql:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 3
         2: .line 600
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject key
        end local 2 // int hash
        end local 1 // org.jruby.RubyHash$RubyHashEntry entry
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/jruby/RubyHash;
            0    4     1  entry  Lorg/jruby/RubyHash$RubyHashEntry;
            0    4     2   hash  I
            0    4     3    key  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
       Name  Flags
      entry  
      hash   
      key    

  protected org.jruby.RubyHash$RubyHashEntry internalDelete(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash$RubyHashEntry;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
         0: .line 608
            aload 0 /* this */
            getfield org.jruby.RubyHash.size:I
            ifne 1
            getstatic org.jruby.RubyHash.NO_ENTRY:Lorg/jruby/RubyHash$RubyHashEntry;
            areturn
         1: .line 610
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual org.jruby.RubyHash.hashValue:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            getstatic org.jruby.RubyHash.MATCH_KEY:Lorg/jruby/RubyHash$EntryMatchType;
            aload 1 /* key */
            invokevirtual org.jruby.RubyHash.internalDelete:(ILorg/jruby/RubyHash$EntryMatchType;Ljava/lang/Object;)Lorg/jruby/RubyHash$RubyHashEntry;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyHash;
            0    2     1   key  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      key   final

  protected org.jruby.RubyHash$RubyHashEntry internalDeleteEntry(org.jruby.RubyHash$RubyHashEntry);
    descriptor: (Lorg/jruby/RubyHash$RubyHashEntry;)Lorg/jruby/RubyHash$RubyHashEntry;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.RubyHash$RubyHashEntry entry
         0: .line 615
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.key:Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyHash.hashValue:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            getstatic org.jruby.RubyHash.MATCH_ENTRY:Lorg/jruby/RubyHash$EntryMatchType;
            aload 1 /* entry */
            invokevirtual org.jruby.RubyHash.internalDelete:(ILorg/jruby/RubyHash$EntryMatchType;Ljava/lang/Object;)Lorg/jruby/RubyHash$RubyHashEntry;
            areturn
        end local 1 // org.jruby.RubyHash$RubyHashEntry entry
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/jruby/RubyHash;
            0    1     1  entry  Lorg/jruby/RubyHash$RubyHashEntry;
    MethodParameters:
       Name  Flags
      entry  final

  private final org.jruby.RubyHash$RubyHashEntry internalDelete(int, org.jruby.RubyHash$EntryMatchType, java.lang.Object);
    descriptor: (ILorg/jruby/RubyHash$EntryMatchType;Ljava/lang/Object;)Lorg/jruby/RubyHash$RubyHashEntry;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=3, locals=7, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // int hash
        start local 2 // org.jruby.RubyHash$EntryMatchType matchType
        start local 3 // java.lang.Object obj
         0: .line 619
            iload 1 /* hash */
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            arraylength
            invokestatic org.jruby.RubyHash.bucketIndex:(II)I
            istore 4 /* i */
        start local 4 // int i
         1: .line 621
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            iload 4 /* i */
            aaload
            astore 5 /* entry */
        start local 5 // org.jruby.RubyHash$RubyHashEntry entry
         2: .line 622
            aload 5 /* entry */
            ifnull 15
         3: .line 623
            aconst_null
            astore 6 /* prior */
        start local 6 // org.jruby.RubyHash$RubyHashEntry prior
         4: .line 624
            goto 14
         5: .line 625
      StackMap locals: int org.jruby.RubyHash$RubyHashEntry org.jruby.RubyHash$RubyHashEntry
      StackMap stack:
            aload 5 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.hash:I
            iload 1 /* hash */
            if_icmpne 13
            aload 2 /* matchType */
            aload 5 /* entry */
            aload 3 /* obj */
            invokevirtual org.jruby.RubyHash$EntryMatchType.matches:(Lorg/jruby/RubyHash$RubyHashEntry;Ljava/lang/Object;)Z
            ifeq 13
         6: .line 626
            aload 6 /* prior */
            ifnull 9
         7: .line 627
            aload 6 /* prior */
            aload 5 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.next:Lorg/jruby/RubyHash$RubyHashEntry;
            putfield org.jruby.RubyHash$RubyHashEntry.next:Lorg/jruby/RubyHash$RubyHashEntry;
         8: .line 628
            goto 10
         9: .line 629
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            iload 4 /* i */
            aload 5 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.next:Lorg/jruby/RubyHash$RubyHashEntry;
            aastore
        10: .line 631
      StackMap locals:
      StackMap stack:
            aload 5 /* entry */
            invokevirtual org.jruby.RubyHash$RubyHashEntry.detach:()V
        11: .line 632
            aload 0 /* this */
            dup
            getfield org.jruby.RubyHash.size:I
            iconst_1
            isub
            putfield org.jruby.RubyHash.size:I
        12: .line 633
            aload 5 /* entry */
            areturn
        13: .line 624
      StackMap locals:
      StackMap stack:
            aload 5 /* entry */
            astore 6 /* prior */
            aload 5 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.next:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 5 /* entry */
      StackMap locals:
      StackMap stack:
        14: aload 5 /* entry */
            ifnonnull 5
        end local 6 // org.jruby.RubyHash$RubyHashEntry prior
        15: .line 638
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.RubyHash.NO_ENTRY:Lorg/jruby/RubyHash$RubyHashEntry;
            areturn
        end local 5 // org.jruby.RubyHash$RubyHashEntry entry
        end local 4 // int i
        end local 3 // java.lang.Object obj
        end local 2 // org.jruby.RubyHash$EntryMatchType matchType
        end local 1 // int hash
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   16     0       this  Lorg/jruby/RubyHash;
            0   16     1       hash  I
            0   16     2  matchType  Lorg/jruby/RubyHash$EntryMatchType;
            0   16     3        obj  Ljava/lang/Object;
            1   16     4          i  I
            2   16     5      entry  Lorg/jruby/RubyHash$RubyHashEntry;
            4   15     6      prior  Lorg/jruby/RubyHash$RubyHashEntry;
    MethodParameters:
           Name  Flags
      hash       final
      matchType  final
      obj        final

  private final org.jruby.RubyHash$RubyHashEntry[] internalCopyTable(org.jruby.RubyHash$RubyHashEntry);
    descriptor: (Lorg/jruby/RubyHash$RubyHashEntry;)[Lorg/jruby/RubyHash$RubyHashEntry;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=9, locals=5, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.RubyHash$RubyHashEntry destHead
         0: .line 661
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            arraylength
            anewarray org.jruby.RubyHash$RubyHashEntry
            astore 2 /* newTable */
        start local 2 // org.jruby.RubyHash$RubyHashEntry[] newTable
         1: .line 663
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 3 /* entry */
        start local 3 // org.jruby.RubyHash$RubyHashEntry entry
         2: goto 6
         3: .line 664
      StackMap locals: org.jruby.RubyHash$RubyHashEntry[] org.jruby.RubyHash$RubyHashEntry
      StackMap stack:
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.hash:I
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            arraylength
            invokestatic org.jruby.RubyHash.bucketIndex:(II)I
            istore 4 /* i */
        start local 4 // int i
         4: .line 665
            aload 2 /* newTable */
            iload 4 /* i */
            new org.jruby.RubyHash$RubyHashEntry
            dup
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.hash:I
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.key:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.value:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 2 /* newTable */
            iload 4 /* i */
            aaload
            aload 1 /* destHead */
            invokespecial org.jruby.RubyHash$RubyHashEntry.<init>:(ILorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyHash$RubyHashEntry;Lorg/jruby/RubyHash$RubyHashEntry;)V
            aastore
        end local 4 // int i
         5: .line 663
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 3 /* entry */
      StackMap locals:
      StackMap stack:
         6: aload 3 /* entry */
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            if_acmpne 3
        end local 3 // org.jruby.RubyHash$RubyHashEntry entry
         7: .line 667
            aload 2 /* newTable */
            areturn
        end local 2 // org.jruby.RubyHash$RubyHashEntry[] newTable
        end local 1 // org.jruby.RubyHash$RubyHashEntry destHead
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lorg/jruby/RubyHash;
            0    8     1  destHead  Lorg/jruby/RubyHash$RubyHashEntry;
            1    8     2  newTable  [Lorg/jruby/RubyHash$RubyHashEntry;
            2    7     3     entry  Lorg/jruby/RubyHash$RubyHashEntry;
            4    5     4         i  I
    MethodParameters:
          Name  Flags
      destHead  

  public <T> void visitAll(org.jruby.runtime.ThreadContext, org.jruby.RubyHash$VisitorWithState, );
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.RubyHash$VisitorWithState visitor
        start local 3 // java.lang.Object state
         0: .line 683
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* visitor */
            ldc -1
            aload 3 /* state */
            invokevirtual org.jruby.RubyHash.visitLimited:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;JLjava/lang/Object;)V
         1: .line 684
            return
        end local 3 // java.lang.Object state
        end local 2 // org.jruby.RubyHash$VisitorWithState visitor
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyHash;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2  visitor  Lorg/jruby/RubyHash$VisitorWithState;
            0    2     3    state  TT;
    Signature: <T:Ljava/lang/Object;>(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;TT;)V
    MethodParameters:
         Name  Flags
      context  
      visitor  
      state    

  private <T> void visitLimited(org.jruby.runtime.ThreadContext, org.jruby.RubyHash$VisitorWithState, long, );
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;JLjava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=11, args_size=5
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.RubyHash$VisitorWithState visitor
        start local 3 // long size
        start local 5 // java.lang.Object state
         0: .line 687
            aload 0 /* this */
            getfield org.jruby.RubyHash.generation:I
            istore 6 /* startGeneration */
        start local 6 // int startGeneration
         1: .line 688
            lload 3 /* size */
            lstore 7 /* count */
        start local 7 // long count
         2: .line 689
            iconst_0
            istore 9 /* index */
        start local 9 // int index
         3: .line 691
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 10 /* entry */
        start local 10 // org.jruby.RubyHash$RubyHashEntry entry
         4: goto 13
         5: .line 692
      StackMap locals: org.jruby.RubyHash org.jruby.runtime.ThreadContext org.jruby.RubyHash$VisitorWithState long java.lang.Object int long int org.jruby.RubyHash$RubyHashEntry
      StackMap stack:
            iload 6 /* startGeneration */
            aload 0 /* this */
            getfield org.jruby.RubyHash.generation:I
            if_icmpeq 9
         6: .line 693
            aload 0 /* this */
            getfield org.jruby.RubyHash.generation:I
            istore 6 /* startGeneration */
         7: .line 694
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 10 /* entry */
         8: .line 695
            aload 10 /* entry */
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            if_acmpne 9
            goto 14
         9: .line 697
      StackMap locals:
      StackMap stack:
            aload 10 /* entry */
            ifnull 12
            aload 10 /* entry */
            invokevirtual org.jruby.RubyHash$RubyHashEntry.isLive:()Z
            ifeq 12
        10: .line 698
            aload 2 /* visitor */
            aload 1 /* context */
            aload 0 /* this */
            aload 10 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.key:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 10 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.value:Lorg/jruby/runtime/builtin/IRubyObject;
            iload 9 /* index */
            iinc 9 /* index */ 1
            aload 5 /* state */
            invokevirtual org.jruby.RubyHash$VisitorWithState.visit:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;ILjava/lang/Object;)V
        11: .line 699
            lload 7 /* count */
            lconst_1
            lsub
            lstore 7 /* count */
        12: .line 691
      StackMap locals:
      StackMap stack:
            aload 10 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 10 /* entry */
      StackMap locals:
      StackMap stack:
        13: aload 10 /* entry */
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            if_acmpeq 14
            lload 7 /* count */
            lconst_0
            lcmp
            ifne 5
        end local 10 // org.jruby.RubyHash$RubyHashEntry entry
        14: .line 705
      StackMap locals:
      StackMap stack:
            lload 7 /* count */
            lconst_0
            lcmp
            ifle 15
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.concurrentModification:()Lorg/jruby/exceptions/RaiseException;
            athrow
        15: .line 706
      StackMap locals:
      StackMap stack:
            return
        end local 9 // int index
        end local 7 // long count
        end local 6 // int startGeneration
        end local 5 // java.lang.Object state
        end local 3 // long size
        end local 2 // org.jruby.RubyHash$VisitorWithState visitor
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   16     0             this  Lorg/jruby/RubyHash;
            0   16     1          context  Lorg/jruby/runtime/ThreadContext;
            0   16     2          visitor  Lorg/jruby/RubyHash$VisitorWithState;
            0   16     3             size  J
            0   16     5            state  TT;
            1   16     6  startGeneration  I
            2   16     7            count  J
            3   16     9            index  I
            4   14    10            entry  Lorg/jruby/RubyHash$RubyHashEntry;
    Signature: <T:Ljava/lang/Object;>(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;JTT;)V
    MethodParameters:
         Name  Flags
      context  
      visitor  
      size     
      state    

  public <T> boolean allSymbols();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 709
            aload 0 /* this */
            getfield org.jruby.RubyHash.generation:I
            istore 1 /* startGeneration */
        start local 1 // int startGeneration
         1: .line 711
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 2 /* head */
        start local 2 // org.jruby.RubyHash$RubyHashEntry head
         2: .line 712
            aload 2 /* head */
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 3 /* entry */
        start local 3 // org.jruby.RubyHash$RubyHashEntry entry
         3: goto 11
         4: .line 713
      StackMap locals: int org.jruby.RubyHash$RubyHashEntry org.jruby.RubyHash$RubyHashEntry
      StackMap stack:
            iload 1 /* startGeneration */
            aload 0 /* this */
            getfield org.jruby.RubyHash.generation:I
            if_icmpeq 8
         5: .line 714
            aload 0 /* this */
            getfield org.jruby.RubyHash.generation:I
            istore 1 /* startGeneration */
         6: .line 715
            aload 2 /* head */
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 3 /* entry */
         7: .line 716
            aload 3 /* entry */
            aload 2 /* head */
            if_acmpne 8
            goto 12
         8: .line 718
      StackMap locals:
      StackMap stack:
            aload 3 /* entry */
            ifnull 10
            aload 3 /* entry */
            invokevirtual org.jruby.RubyHash$RubyHashEntry.isLive:()Z
            ifeq 10
         9: .line 719
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.key:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubySymbol
            ifne 10
            iconst_0
            ireturn
        10: .line 712
      StackMap locals:
      StackMap stack:
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 3 /* entry */
      StackMap locals:
      StackMap stack:
        11: aload 3 /* entry */
            aload 2 /* head */
            if_acmpne 4
        end local 3 // org.jruby.RubyHash$RubyHashEntry entry
        12: .line 722
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 2 // org.jruby.RubyHash$RubyHashEntry head
        end local 1 // int startGeneration
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   13     0             this  Lorg/jruby/RubyHash;
            1   13     1  startGeneration  I
            2   13     2             head  Lorg/jruby/RubyHash$RubyHashEntry;
            3   12     3            entry  Lorg/jruby/RubyHash$RubyHashEntry;
    Signature: <T:Ljava/lang/Object;>()Z

  public org.jruby.runtime.builtin.IRubyObject initialize(org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
    descriptor: ([Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 2 // org.jruby.runtime.Block block
         0: .line 740
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.modify:()V
         1: .line 742
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 6
         2: .line 743
            aload 1 /* args */
            arraylength
            ifle 3
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            ldc "wrong number of arguments"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         3: .line 744
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            getstatic org.jruby.runtime.Block$Type.PROC:Lorg/jruby/runtime/Block$Type;
            aload 2 /* block */
            invokevirtual org.jruby.Ruby.newProc:(Lorg/jruby/runtime/Block$Type;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyProc;
            putfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
         4: .line 745
            aload 0 /* this */
            dup
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.PROCDEFAULT_HASH_F:I
            ior
            putfield org.jruby.RubyHash.flags:I
         5: .line 746
            goto 9
         6: .line 747
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            aload 1 /* args */
            iconst_0
            iconst_1
            invokestatic org.jruby.runtime.Arity.checkArgumentCount:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;II)I
            pop
         7: .line 748
            aload 1 /* args */
            arraylength
            iconst_1
            if_icmpne 8
            aload 0 /* this */
            aload 1 /* args */
            iconst_0
            aaload
            putfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
         8: .line 749
      StackMap locals:
      StackMap stack:
            aload 1 /* args */
            arraylength
            ifne 9
            aload 0 /* this */
            getstatic org.jruby.RubyHash.UNDEF:Lorg/jruby/runtime/builtin/IRubyObject;
            putfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
         9: .line 751
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lorg/jruby/RubyHash;
            0   10     1   args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0   10     2  block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(optional = 1, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
    MethodParameters:
       Name  Flags
      args   
      block  final

  public org.jruby.runtime.builtin.IRubyObject default_value_get(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.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 756
            aload 0 /* this */
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.PROCDEFAULT_HASH_F:I
            iand
            ifeq 2
         1: .line 757
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 759
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
            getstatic org.jruby.RubyHash.UNDEF:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 3
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            goto 4
      StackMap locals:
      StackMap stack:
         3: aload 0 /* this */
            getfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         4: areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/RubyHash;
            0    5     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"default"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject default_value_get(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=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 764
            aload 0 /* this */
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.PROCDEFAULT_HASH_F:I
            iand
            ifeq 2
         1: .line 765
            aload 1 /* context */
            invokestatic org.jruby.RubyHash.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$HashSites;
            getfield org.jruby.runtime.JavaSites$HashSites.call:Lorg/jruby/runtime/CallSite;
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            aload 2 /* arg */
            invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 767
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
            getstatic org.jruby.RubyHash.UNDEF:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 3
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            goto 4
      StackMap locals:
      StackMap stack:
         3: aload 0 /* this */
            getfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         4: areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/RubyHash;
            0    5     1  context  Lorg/jruby/runtime/ThreadContext;
            0    5     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"default"})
    MethodParameters:
         Name  Flags
      context  
      arg      

  public org.jruby.runtime.builtin.IRubyObject default_value_set(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=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject defaultValue
         0: .line 775
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.modify:()V
         1: .line 777
            aload 0 /* this */
            aload 2 /* defaultValue */
            putfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
         2: .line 778
            aload 0 /* this */
            dup
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.PROCDEFAULT_HASH_F:I
            iconst_m1
            ixor
            iand
            putfield org.jruby.RubyHash.flags:I
         3: .line 780
            aload 0 /* this */
            getfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject defaultValue
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/jruby/RubyHash;
            0    4     1       context  Lorg/jruby/runtime/ThreadContext;
            0    4     2  defaultValue  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"default="}, required = 1)
    MethodParameters:
              Name  Flags
      context       
      defaultValue  final

  public org.jruby.runtime.builtin.IRubyObject default_proc(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.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 788
            aload 0 /* this */
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.PROCDEFAULT_HASH_F:I
            iand
            ifeq 1
            aload 0 /* this */
            getfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  private void checkDefaultProcArity(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject proc
         0: .line 795
            aload 1 /* proc */
            checkcast org.jruby.RubyProc
            invokevirtual org.jruby.RubyProc.getBlock:()Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.runtime.Block.getSignature:()Lorg/jruby/runtime/Signature;
            invokevirtual org.jruby.runtime.Signature.arityValue:()I
            istore 2 /* n */
        start local 2 // int n
         1: .line 797
            aload 1 /* proc */
            checkcast org.jruby.RubyProc
            invokevirtual org.jruby.RubyProc.getBlock:()Lorg/jruby/runtime/Block;
            getfield org.jruby.runtime.Block.type:Lorg/jruby/runtime/Block$Type;
            getstatic org.jruby.runtime.Block$Type.LAMBDA:Lorg/jruby/runtime/Block$Type;
            if_acmpne 4
            iload 2 /* n */
            iconst_2
            if_icmpeq 4
            iload 2 /* n */
            ifge 2
            iload 2 /* n */
            bipush -3
            if_icmpge 4
         2: .line 798
      StackMap locals: int
      StackMap stack:
            iload 2 /* n */
            ifge 3
            iload 2 /* n */
            ineg
            iconst_1
            isub
            istore 2 /* n */
         3: .line 799
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.getRuntime:()Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            ldc "default_proc takes two arguments (2 for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* n */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         4: .line 801
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int n
        end local 1 // org.jruby.runtime.builtin.IRubyObject proc
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/jruby/RubyHash;
            0    5     1  proc  Lorg/jruby/runtime/builtin/IRubyObject;
            1    5     2     n  I
    MethodParameters:
      Name  Flags
      proc  

  public org.jruby.runtime.builtin.IRubyObject set_default_proc(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=4, locals=5, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject proc
         0: .line 808
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.modify:()V
         1: .line 810
            aload 2 /* proc */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 5
         2: .line 811
            aload 0 /* this */
            aload 2 /* proc */
            putfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 812
            aload 0 /* this */
            dup
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.PROCDEFAULT_HASH_F:I
            iconst_m1
            ixor
            iand
            putfield org.jruby.RubyHash.flags:I
         4: .line 813
            aload 2 /* proc */
            areturn
         5: .line 816
      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 818
            aload 2 /* proc */
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getProc:()Lorg/jruby/RubyClass;
            ldc "to_proc"
            invokestatic org.jruby.util.TypeConverter.convertToType:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 4 /* b */
        start local 4 // org.jruby.runtime.builtin.IRubyObject b
         7: .line 819
            aload 4 /* b */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 8
            aload 4 /* b */
            instanceof org.jruby.RubyProc
            ifne 9
         8: .line 820
      StackMap locals: org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 3 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "wrong default_proc type "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* proc */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " (expected Proc)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         9: .line 822
      StackMap locals:
      StackMap stack:
            aload 4 /* b */
            astore 2 /* proc */
        10: .line 823
            aload 0 /* this */
            aload 2 /* proc */
            invokevirtual org.jruby.RubyHash.checkDefaultProcArity:(Lorg/jruby/runtime/builtin/IRubyObject;)V
        11: .line 824
            aload 0 /* this */
            aload 2 /* proc */
            putfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
        12: .line 825
            aload 0 /* this */
            dup
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.PROCDEFAULT_HASH_F:I
            ior
            putfield org.jruby.RubyHash.flags:I
        13: .line 826
            aload 2 /* proc */
            areturn
        end local 4 // org.jruby.runtime.builtin.IRubyObject b
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject proc
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Lorg/jruby/RubyHash;
            0   14     1  context  Lorg/jruby/runtime/ThreadContext;
            0   14     2     proc  Lorg/jruby/runtime/builtin/IRubyObject;
            6   14     3  runtime  Lorg/jruby/Ruby;
            7   14     4        b  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"default_proc="})
    MethodParameters:
         Name  Flags
      context  
      proc     

  public void modify();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 833
            aload 0 /* this */
            ldc "Hash"
            invokevirtual org.jruby.RubyHash.testFrozen:(Ljava/lang/String;)V
         1: .line 834
            return
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyHash;

  private org.jruby.runtime.builtin.IRubyObject inspectHash(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 840
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            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 842
            aload 2 /* str */
            aload 0 /* this */
            invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
            pop
         2: .line 844
            aload 2 /* str */
            bipush 123
            invokevirtual org.jruby.RubyString.cat:(B)Lorg/jruby/RubyString;
            pop
         3: .line 846
            aload 0 /* this */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.InspectVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 2 /* str */
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         4: .line 847
            aload 2 /* str */
            bipush 125
            invokevirtual org.jruby.RubyString.cat:(B)Lorg/jruby/RubyString;
            pop
         5: .line 848
            aload 2 /* str */
            areturn
        end local 2 // org.jruby.RubyString str
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/jruby/RubyHash;
            0    6     1  context  Lorg/jruby/runtime/ThreadContext;
            1    6     2      str  Lorg/jruby/RubyString;
    MethodParameters:
         Name  Flags
      context  final

  public org.jruby.runtime.builtin.IRubyObject inspect();
    descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 870
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.RubyHash.inspect:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;

  public org.jruby.runtime.builtin.IRubyObject inspect(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 878
            aload 0 /* this */
            getfield org.jruby.RubyHash.size:I
            ifne 1
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "{}"
            invokestatic org.jruby.RubyString.newUSASCIIString:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyString;
            areturn
         1: .line 879
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.Ruby.isInspecting:(Ljava/lang/Object;)Z
            ifeq 2
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "{...}"
            invokestatic org.jruby.RubyString.newUSASCIIString:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyString;
            areturn
         2: .line 882
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.Ruby.registerInspecting:(Ljava/lang/Object;)V
         3: .line 883
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.inspectHash:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3
         4: .line 885
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.Ruby.unregisterInspecting:(Ljava/lang/Object;)V
         5: .line 883
            aload 3
            areturn
         6: .line 884
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2
         7: .line 885
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.Ruby.unregisterInspecting:(Ljava/lang/Object;)V
         8: .line 886
            aload 2
            athrow
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/jruby/RubyHash;
            0    9     1  context  Lorg/jruby/runtime/ThreadContext;
      Exception table:
        from    to  target  type
           2     4       6  any
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"inspect"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject inspect19(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.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 891
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.inspect:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.RubyFixnum rb_size(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyFixnum;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 899
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.RubyHash.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.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"size", "length"})
    MethodParameters:
         Name  Flags
      context  

  private org.jruby.RubyEnumerator$SizeFn enumSizeFn();
    descriptor: ()Lorg/jruby/RubyEnumerator$SizeFn;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 903
            aload 0 /* this */
            invokedynamic size(Lorg/jruby/RubyHash;)Lorg/jruby/RubyEnumerator$SizeFn;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
                  org/jruby/RubyHash.lambda$0(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject; (7)
                  (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;

  public org.jruby.RubyBoolean empty_p(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyBoolean;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 911
            aload 0 /* this */
            getfield org.jruby.RubyHash.size:I
            ifne 1
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
      StackMap locals:
      StackMap stack: org.jruby.RubyBoolean
         2: areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"empty?"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.RubyArray to_a(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyArray;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 920
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 922
            aload 2 /* runtime */
            aload 0 /* this */
            getfield org.jruby.RubyHash.size:I
            invokestatic org.jruby.RubyArray.newBlankArrayInternal:(Lorg/jruby/Ruby;I)Lorg/jruby/RubyArray;
            astore 3 /* result */
        start local 3 // org.jruby.RubyArray result
         2: .line 924
            aload 0 /* this */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.StoreKeyValueVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 3 /* result */
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         3: .line 926
            aload 3 /* result */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.isTaint:()Z
            invokevirtual org.jruby.RubyArray.setTaint:(Z)V
         4: .line 927
            aload 3 /* result */
         5: areturn
        end local 3 // org.jruby.RubyArray result
         6: .line 928
      StackMap locals: org.jruby.RubyHash org.jruby.runtime.ThreadContext org.jruby.Ruby
      StackMap stack: java.lang.NegativeArraySizeException
            pop
         7: .line 929
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.concurrentModification:()Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/RubyHash;
            0    8     1  context  Lorg/jruby/runtime/ThreadContext;
            1    8     2  runtime  Lorg/jruby/Ruby;
            2    6     3   result  Lorg/jruby/RubyArray;
      Exception table:
        from    to  target  type
           1     5       6  Class java.lang.NegativeArraySizeException
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"to_a"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject to_s(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.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 945
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.inspect:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"to_s"})
    MethodParameters:
         Name  Flags
      context  

  public final org.jruby.runtime.builtin.IRubyObject to_s19(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 949
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.to_s:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.RubyHash rehash(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=10, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 957
            aload 0 /* this */
            getfield org.jruby.RubyHash.iteratorCount:I
            ifle 2
         1: .line 958
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "rehash during iteration"
            invokevirtual org.jruby.Ruby.newRuntimeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         2: .line 961
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.modify:()V
         3: .line 962
            aload 0 /* this */
            getfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
            astore 2 /* oldTable */
        start local 2 // org.jruby.RubyHash$RubyHashEntry[] oldTable
         4: .line 963
            aload 2 /* oldTable */
            arraylength
            anewarray org.jruby.RubyHash$RubyHashEntry
            astore 3 /* newTable */
        start local 3 // org.jruby.RubyHash$RubyHashEntry[] newTable
         5: .line 964
            iconst_0
            istore 4 /* j */
        start local 4 // int j
         6: goto 25
         7: .line 965
      StackMap locals: org.jruby.RubyHash$RubyHashEntry[] org.jruby.RubyHash$RubyHashEntry[] int
      StackMap stack:
            aload 2 /* oldTable */
            iload 4 /* j */
            aaload
            astore 5 /* entry */
        start local 5 // org.jruby.RubyHash$RubyHashEntry entry
         8: .line 966
            aload 2 /* oldTable */
            iload 4 /* j */
            aconst_null
            aastore
         9: .line 967
            goto 23
        10: .line 968
      StackMap locals: org.jruby.RubyHash$RubyHashEntry
      StackMap stack:
            aload 5 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.next:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 6 /* next */
        start local 6 // org.jruby.RubyHash$RubyHashEntry next
        11: .line 969
            aload 5 /* entry */
            aload 0 /* this */
            aload 5 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.key:Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyHash.hashValue:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            putfield org.jruby.RubyHash$RubyHashEntry.hash:I
        12: .line 970
            aload 5 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.hash:I
            aload 3 /* newTable */
            arraylength
            invokestatic org.jruby.RubyHash.bucketIndex:(II)I
            istore 7 /* i */
        start local 7 // int i
        13: .line 972
            aload 3 /* newTable */
            iload 7 /* i */
            aaload
            ifnull 20
            aload 0 /* this */
            aload 3 /* newTable */
            iload 7 /* i */
            aaload
            aload 5 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.hash:I
            aload 5 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.key:Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyHash.internalKeyExist:(Lorg/jruby/RubyHash$RubyHashEntry;ILorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 20
        14: .line 973
            aload 5 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 8 /* tmpNext */
        start local 8 // org.jruby.RubyHash$RubyHashEntry tmpNext
        15: .line 974
            aload 5 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.prevAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 9 /* tmpPrev */
        start local 9 // org.jruby.RubyHash$RubyHashEntry tmpPrev
        16: .line 975
            aload 9 /* tmpPrev */
            aload 8 /* tmpNext */
            putfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
        17: .line 976
            aload 9 /* tmpPrev */
            aload 9 /* tmpPrev */
            putfield org.jruby.RubyHash$RubyHashEntry.prevAdded:Lorg/jruby/RubyHash$RubyHashEntry;
        18: .line 977
            aload 0 /* this */
            dup
            getfield org.jruby.RubyHash.size:I
            iconst_1
            isub
            putfield org.jruby.RubyHash.size:I
        end local 9 // org.jruby.RubyHash$RubyHashEntry tmpPrev
        end local 8 // org.jruby.RubyHash$RubyHashEntry tmpNext
        19: .line 978
            goto 22
        20: .line 979
      StackMap locals: org.jruby.RubyHash$RubyHashEntry int
      StackMap stack:
            aload 5 /* entry */
            aload 3 /* newTable */
            iload 7 /* i */
            aaload
            putfield org.jruby.RubyHash$RubyHashEntry.next:Lorg/jruby/RubyHash$RubyHashEntry;
        21: .line 980
            aload 3 /* newTable */
            iload 7 /* i */
            aload 5 /* entry */
            aastore
        22: .line 982
      StackMap locals:
      StackMap stack:
            aload 6 /* next */
            astore 5 /* entry */
        end local 7 // int i
        end local 6 // org.jruby.RubyHash$RubyHashEntry next
        23: .line 967
      StackMap locals:
      StackMap stack:
            aload 5 /* entry */
            ifnonnull 10
        end local 5 // org.jruby.RubyHash$RubyHashEntry entry
        24: .line 964
            iinc 4 /* j */ 1
      StackMap locals:
      StackMap stack:
        25: iload 4 /* j */
            aload 2 /* oldTable */
            arraylength
            if_icmplt 7
        end local 4 // int j
        26: .line 985
            aload 0 /* this */
            aload 3 /* newTable */
            putfield org.jruby.RubyHash.table:[Lorg/jruby/RubyHash$RubyHashEntry;
        27: .line 986
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.RubyHash$RubyHashEntry[] newTable
        end local 2 // org.jruby.RubyHash$RubyHashEntry[] oldTable
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   28     0      this  Lorg/jruby/RubyHash;
            0   28     1   context  Lorg/jruby/runtime/ThreadContext;
            4   28     2  oldTable  [Lorg/jruby/RubyHash$RubyHashEntry;
            5   28     3  newTable  [Lorg/jruby/RubyHash$RubyHashEntry;
            6   26     4         j  I
            8   24     5     entry  Lorg/jruby/RubyHash$RubyHashEntry;
           11   23     6      next  Lorg/jruby/RubyHash$RubyHashEntry;
           13   23     7         i  I
           15   19     8   tmpNext  Lorg/jruby/RubyHash$RubyHashEntry;
           16   19     9   tmpPrev  Lorg/jruby/RubyHash$RubyHashEntry;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"rehash"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.RubyHash to_hash(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 994
            aload 0 /* this */
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"to_hash"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.RubyHash to_h(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 999
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 1000
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.getType:()Lorg/jruby/RubyClass;
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getHash:()Lorg/jruby/RubyClass;
            if_acmpne 2
            aload 0 /* this */
            goto 3
      StackMap locals: org.jruby.Ruby
      StackMap stack:
         2: aload 2 /* runtime */
            invokestatic org.jruby.RubyHash.newHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
            aload 1 /* context */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.replace:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash;
      StackMap locals:
      StackMap stack: org.jruby.RubyHash
         3: areturn
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyHash;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            1    4     2  runtime  Lorg/jruby/Ruby;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.RubyHash convertToHash();
    descriptor: ()Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 1005
            aload 0 /* this */
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;

  public final void fastASet(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 1009
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* value */
            invokevirtual org.jruby.RubyHash.internalPut:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         1: .line 1010
            return
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jruby/RubyHash;
            0    2     1    key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     2  value  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
       Name  Flags
      key    
      value  

  public final void fastASetSmall(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 1013
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* value */
            invokevirtual org.jruby.RubyHash.internalPutSmall:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         1: .line 1014
            return
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jruby/RubyHash;
            0    2     1    key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     2  value  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
       Name  Flags
      key    
      value  

  public final void fastASetCheckString(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.runtime.builtin.IRubyObject key
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 1017
            aload 2 /* key */
            instanceof org.jruby.RubyString
            ifeq 3
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.isComparedByIdentity:()Z
            ifne 3
         1: .line 1018
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* key */
            checkcast org.jruby.RubyString
            aload 3 /* value */
            invokevirtual org.jruby.RubyHash.op_asetForString:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;)V
         2: .line 1019
            goto 4
         3: .line 1020
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* key */
            aload 3 /* value */
            invokevirtual org.jruby.RubyHash.internalPut:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         4: .line 1022
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject key
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/RubyHash;
            0    5     1  runtime  Lorg/jruby/Ruby;
            0    5     2      key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      runtime  
      key      
      value    

  public final void fastASetSmallCheckString(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.runtime.builtin.IRubyObject key
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 1025
            aload 2 /* key */
            instanceof org.jruby.RubyString
            ifeq 3
         1: .line 1026
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* key */
            checkcast org.jruby.RubyString
            aload 3 /* value */
            invokevirtual org.jruby.RubyHash.op_asetSmallForString:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;)V
         2: .line 1027
            goto 4
         3: .line 1028
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* key */
            aload 3 /* value */
            invokevirtual org.jruby.RubyHash.internalPutSmall:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         4: .line 1030
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject key
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/RubyHash;
            0    5     1  runtime  Lorg/jruby/Ruby;
            0    5     2      key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      runtime  
      key      
      value    

  public final void fastASet(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, boolean);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.runtime.builtin.IRubyObject key
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
        start local 4 // boolean prepareString
         0: .line 1033
            iload 4 /* prepareString */
            ifeq 3
         1: .line 1034
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* key */
            aload 3 /* value */
            invokevirtual org.jruby.RubyHash.fastASetCheckString:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         2: .line 1035
            goto 4
         3: .line 1036
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* key */
            aload 3 /* value */
            invokevirtual org.jruby.RubyHash.fastASet:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         4: .line 1038
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean prepareString
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject key
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0           this  Lorg/jruby/RubyHash;
            0    5     1        runtime  Lorg/jruby/Ruby;
            0    5     2            key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3          value  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     4  prepareString  Z
    MethodParameters:
               Name  Flags
      runtime        
      key            
      value          
      prepareString  

  public final void fastASetSmall(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, boolean);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.runtime.builtin.IRubyObject key
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
        start local 4 // boolean prepareString
         0: .line 1041
            iload 4 /* prepareString */
            ifeq 3
         1: .line 1042
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* key */
            aload 3 /* value */
            invokevirtual org.jruby.RubyHash.fastASetSmallCheckString:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         2: .line 1043
            goto 4
         3: .line 1044
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* key */
            aload 3 /* value */
            invokevirtual org.jruby.RubyHash.fastASetSmall:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         4: .line 1046
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean prepareString
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject key
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0           this  Lorg/jruby/RubyHash;
            0    5     1        runtime  Lorg/jruby/Ruby;
            0    5     2            key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3          value  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     4  prepareString  Z
    MethodParameters:
               Name  Flags
      runtime        
      key            
      value          
      prepareString  

  public org.jruby.runtime.builtin.IRubyObject op_aset(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/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject key
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 1053
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.modify:()V
         1: .line 1055
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* key */
            aload 3 /* value */
            invokevirtual org.jruby.RubyHash.fastASetCheckString:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         2: .line 1056
            aload 3 /* value */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject key
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2      key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"[]=", "store"})
    MethodParameters:
         Name  Flags
      context  
      key      
      value    

  protected void op_asetForString(org.jruby.Ruby, org.jruby.RubyString, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.RubyString key
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 1061
            aload 0 /* this */
            aload 2 /* key */
            invokevirtual org.jruby.RubyHash.internalGetEntry:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash$RubyHashEntry;
            astore 4 /* entry */
        start local 4 // org.jruby.RubyHash$RubyHashEntry entry
         1: .line 1062
            aload 4 /* entry */
            getstatic org.jruby.RubyHash.NO_ENTRY:Lorg/jruby/RubyHash$RubyHashEntry;
            if_acmpeq 4
         2: .line 1063
            aload 4 /* entry */
            aload 3 /* value */
            putfield org.jruby.RubyHash$RubyHashEntry.value:Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 1064
            goto 7
         4: .line 1065
      StackMap locals: org.jruby.RubyHash$RubyHashEntry
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.checkIterating:()V
         5: .line 1066
            aload 2 /* key */
            invokevirtual org.jruby.RubyString.isFrozen:()Z
            ifne 6
            aload 2 /* key */
            invokevirtual org.jruby.RubyString.dupFrozen:()Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyString
            astore 2 /* key */
         6: .line 1067
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* key */
            aload 3 /* value */
            iconst_0
            invokevirtual org.jruby.RubyHash.internalPut:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)V
         7: .line 1069
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.jruby.RubyHash$RubyHashEntry entry
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.RubyString key
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/RubyHash;
            0    8     1  runtime  Lorg/jruby/Ruby;
            0    8     2      key  Lorg/jruby/RubyString;
            0    8     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
            1    8     4    entry  Lorg/jruby/RubyHash$RubyHashEntry;
    MethodParameters:
         Name  Flags
      runtime  
      key      
      value    

  protected void op_asetSmallForString(org.jruby.Ruby, org.jruby.RubyString, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.RubyString key
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 1072
            aload 0 /* this */
            aload 2 /* key */
            invokevirtual org.jruby.RubyHash.internalGetEntry:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash$RubyHashEntry;
            astore 4 /* entry */
        start local 4 // org.jruby.RubyHash$RubyHashEntry entry
         1: .line 1073
            aload 4 /* entry */
            getstatic org.jruby.RubyHash.NO_ENTRY:Lorg/jruby/RubyHash$RubyHashEntry;
            if_acmpeq 4
         2: .line 1074
            aload 4 /* entry */
            aload 3 /* value */
            putfield org.jruby.RubyHash$RubyHashEntry.value:Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 1075
            goto 7
         4: .line 1076
      StackMap locals: org.jruby.RubyHash$RubyHashEntry
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.checkIterating:()V
         5: .line 1077
            aload 2 /* key */
            invokevirtual org.jruby.RubyString.isFrozen:()Z
            ifne 6
            aload 2 /* key */
            invokevirtual org.jruby.RubyString.dupFrozen:()Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyString
            astore 2 /* key */
         6: .line 1078
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* key */
            aload 3 /* value */
            iconst_0
            invokevirtual org.jruby.RubyHash.internalPutNoResize:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         7: .line 1080
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.jruby.RubyHash$RubyHashEntry entry
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.RubyString key
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/RubyHash;
            0    8     1  runtime  Lorg/jruby/Ruby;
            0    8     2      key  Lorg/jruby/RubyString;
            0    8     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
            1    8     4    entry  Lorg/jruby/RubyHash$RubyHashEntry;
    MethodParameters:
         Name  Flags
      runtime  
      key      
      value    

  public final org.jruby.runtime.builtin.IRubyObject fastARef(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
         0: .line 1084
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual org.jruby.RubyHash.internalGet:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;
            0    1     1   key  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      key   

  public org.jruby.RubyBoolean compare(org.jruby.runtime.ThreadContext, org.jruby.RubyHash$VisitorWithState<org.jruby.RubyHash>, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyBoolean;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.RubyHash$VisitorWithState visitor
        start local 3 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 1088
            aload 3 /* other */
            instanceof org.jruby.RubyHash
            ifne 4
         1: .line 1089
            aload 1 /* context */
            invokestatic org.jruby.RubyHash.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$HashSites;
            getfield org.jruby.runtime.JavaSites$HashSites.respond_to_to_hash:Lorg/jruby/runtime/callsite/RespondToCallSite;
            aload 1 /* context */
            aload 3 /* other */
            aload 3 /* other */
            invokevirtual org.jruby.runtime.callsite.RespondToCallSite.respondsTo:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifne 3
         2: .line 1090
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
         3: .line 1092
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 3 /* other */
            aload 0 /* this */
            invokestatic org.jruby.runtime.Helpers.rbEqual:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyBoolean;
            areturn
         4: .line 1095
      StackMap locals:
      StackMap stack:
            aload 3 /* other */
            checkcast org.jruby.RubyHash
            astore 4 /* otherHash */
        start local 4 // org.jruby.RubyHash otherHash
         5: .line 1097
            aload 0 /* this */
            getfield org.jruby.RubyHash.size:I
            aload 4 /* otherHash */
            getfield org.jruby.RubyHash.size:I
            if_icmpeq 7
         6: .line 1098
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
         7: .line 1102
      StackMap locals: org.jruby.RubyHash
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* visitor */
            aload 4 /* otherHash */
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         8: .line 1103
            goto 11
      StackMap locals:
      StackMap stack: org.jruby.RubyHash$Mismatch
         9: pop
        10: .line 1104
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
        11: .line 1107
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
            areturn
        end local 4 // org.jruby.RubyHash otherHash
        end local 3 // org.jruby.runtime.builtin.IRubyObject other
        end local 2 // org.jruby.RubyHash$VisitorWithState visitor
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lorg/jruby/RubyHash;
            0   12     1    context  Lorg/jruby/runtime/ThreadContext;
            0   12     2    visitor  Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/RubyHash;>;
            0   12     3      other  Lorg/jruby/runtime/builtin/IRubyObject;
            5   12     4  otherHash  Lorg/jruby/RubyHash;
      Exception table:
        from    to  target  type
           7     8       9  Class org.jruby.RubyHash$Mismatch
    Signature: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/RubyHash;>;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyBoolean;
    MethodParameters:
         Name  Flags
      context  final
      visitor  
      other    

  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=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 1148
            aload 1 /* context */
            getstatic org.jruby.RubyHash.FindMismatchUsingEqualVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 0 /* this */
            aload 2 /* other */
            invokestatic org.jruby.util.RecursiveComparator.compare:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    other  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"=="})
    MethodParameters:
         Name  Flags
      context  final
      other    

  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=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 1156
            aload 1 /* context */
            getstatic org.jruby.RubyHash.FindMismatchUsingEqlVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 0 /* this */
            aload 2 /* other */
            invokestatic org.jruby.util.RecursiveComparator.compare:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    other  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"eql?"})
    MethodParameters:
         Name  Flags
      context  final
      other    

  public org.jruby.runtime.builtin.IRubyObject op_eql19(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.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 1161
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* other */
            invokevirtual org.jruby.RubyHash.op_eql:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    other  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  final
      other    

  public org.jruby.runtime.builtin.IRubyObject op_aref(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=4, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject key
         0: .line 1170
            aload 0 /* this */
            aload 2 /* key */
            invokevirtual org.jruby.RubyHash.internalGet:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            dup
            astore 3 /* value */
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         1: ifnonnull 2
            aload 1 /* context */
            invokestatic org.jruby.RubyHash.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$HashSites;
            getfield org.jruby.runtime.JavaSites$HashSites.default_:Lorg/jruby/runtime/CallSite;
            aload 1 /* context */
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* key */
            invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
         2: aload 3 /* value */
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         3: areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject key
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyHash;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2      key  Lorg/jruby/runtime/builtin/IRubyObject;
            1    4     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"[]"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      key      

  private boolean hash_le(org.jruby.RubyHash);
    descriptor: (Lorg/jruby/RubyHash;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.RubyHash other
         0: .line 1177
            aload 1 /* other */
            invokevirtual org.jruby.RubyHash.directEntrySet:()Ljava/util/Set;
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.directEntrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.containsAll:(Ljava/util/Collection;)Z
            ireturn
        end local 1 // org.jruby.RubyHash other
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/jruby/RubyHash;
            0    1     1  other  Lorg/jruby/RubyHash;
    MethodParameters:
       Name  Flags
      other  

  public org.jruby.runtime.builtin.IRubyObject op_lt(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=4, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 1182
            aload 2 /* other */
            checkcast org.jruby.RubyBasicObject
            invokevirtual org.jruby.RubyBasicObject.convertToHash:()Lorg/jruby/RubyHash;
            astore 3 /* otherHash */
        start local 3 // org.jruby.RubyHash otherHash
         1: .line 1183
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.size:()I
            aload 3 /* otherHash */
            invokevirtual org.jruby.RubyHash.size:()I
            if_icmplt 2
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
         2: .line 1185
      StackMap locals: org.jruby.RubyHash
      StackMap stack:
            aload 1 /* context */
            aload 0 /* this */
            aload 3 /* otherHash */
            invokevirtual org.jruby.RubyHash.hash_le:(Lorg/jruby/RubyHash;)Z
            invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 3 // org.jruby.RubyHash otherHash
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/jruby/RubyHash;
            0    3     1    context  Lorg/jruby/runtime/ThreadContext;
            0    3     2      other  Lorg/jruby/runtime/builtin/IRubyObject;
            1    3     3  otherHash  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"<"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      other    

  public org.jruby.runtime.builtin.IRubyObject op_le(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=4, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 1190
            aload 2 /* other */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToHash:()Lorg/jruby/RubyHash;
            astore 3 /* otherHash */
        start local 3 // org.jruby.RubyHash otherHash
         1: .line 1191
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.size:()I
            aload 3 /* otherHash */
            invokevirtual org.jruby.RubyHash.size:()I
            if_icmple 2
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
         2: .line 1193
      StackMap locals: org.jruby.RubyHash
      StackMap stack:
            aload 1 /* context */
            aload 0 /* this */
            aload 3 /* otherHash */
            invokevirtual org.jruby.RubyHash.hash_le:(Lorg/jruby/RubyHash;)Z
            invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 3 // org.jruby.RubyHash otherHash
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/jruby/RubyHash;
            0    3     1    context  Lorg/jruby/runtime/ThreadContext;
            0    3     2      other  Lorg/jruby/runtime/builtin/IRubyObject;
            1    3     3  otherHash  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"<="}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      other    

  public org.jruby.runtime.builtin.IRubyObject op_gt(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=4, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 1198
            aload 2 /* other */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToHash:()Lorg/jruby/RubyHash;
            astore 3 /* otherHash */
        start local 3 // org.jruby.RubyHash otherHash
         1: .line 1199
            aload 3 /* otherHash */
            aload 1 /* context */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.op_lt:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.RubyHash otherHash
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/jruby/RubyHash;
            0    2     1    context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      other  Lorg/jruby/runtime/builtin/IRubyObject;
            1    2     3  otherHash  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {">"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      other    

  public org.jruby.runtime.builtin.IRubyObject op_ge(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=4, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 1204
            aload 2 /* other */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToHash:()Lorg/jruby/RubyHash;
            astore 3 /* otherHash */
        start local 3 // org.jruby.RubyHash otherHash
         1: .line 1205
            aload 3 /* otherHash */
            aload 1 /* context */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.op_le:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.RubyHash otherHash
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/jruby/RubyHash;
            0    2     1    context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      other  Lorg/jruby/runtime/builtin/IRubyObject;
            1    2     3  otherHash  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {">="}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      other    

  public org.jruby.RubyFixnum hash();
    descriptor: ()Lorg/jruby/RubyFixnum;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 1213
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.RubyHash.hash:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyFixnum;
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;

  public org.jruby.RubyFixnum hash(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyFixnum;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1218
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.size:()I
            istore 2 /* size */
        start local 2 // int size
         1: .line 1219
            iconst_1
            newarray 11
            dup
            iconst_0
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            iload 2 /* size */
            i2l
            invokestatic org.jruby.runtime.Helpers.hashStart:(Lorg/jruby/Ruby;J)J
            lastore
            astore 3 /* hval */
        start local 3 // long[] hval
         2: .line 1220
            iload 2 /* size */
            ifle 4
         3: .line 1221
            aload 0 /* this */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.CalculateHashVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 3 /* hval */
            invokevirtual org.jruby.RubyHash.iteratorVisitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         4: .line 1223
      StackMap locals: int long[]
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 3 /* hval */
            iconst_0
            laload
            invokevirtual org.jruby.Ruby.newFixnum:(J)Lorg/jruby/RubyFixnum;
            areturn
        end local 3 // long[] hval
        end local 2 // int size
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/RubyHash;
            0    5     1  context  Lorg/jruby/runtime/ThreadContext;
            1    5     2     size  I
            2    5     3     hval  [J
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"hash"})
    MethodParameters:
         Name  Flags
      context  

  public final org.jruby.RubyFixnum hash19();
    descriptor: ()Lorg/jruby/RubyFixnum;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 1235
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.RubyHash.hash:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyFixnum;
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public org.jruby.runtime.builtin.IRubyObject fetch(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=5, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash 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 1242
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* args */
            arraylength
            iconst_1
            iconst_2
            invokestatic org.jruby.runtime.Arity.checkArgumentCount:(Lorg/jruby/Ruby;III)I
            pop
         1: .line 1244
            aload 2 /* args */
            arraylength
            tableswitch { // 1 - 2
                    1: 2
                    2: 3
              default: 4
          }
         2: .line 1245
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* args */
            iconst_0
            aaload
            aload 3 /* block */
            invokevirtual org.jruby.RubyHash.fetch:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 1246
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* args */
            iconst_0
            aaload
            aload 2 /* args */
            iconst_1
            aaload
            aload 3 /* block */
            invokevirtual org.jruby.RubyHash.fetch:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         4: .line 1249
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        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.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/RubyHash;
            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    

  public org.jruby.runtime.builtin.IRubyObject fetch(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=6, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject key
        start local 3 // org.jruby.runtime.Block block
         0: .line 1254
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         1: .line 1256
            aload 0 /* this */
            aload 2 /* key */
            invokevirtual org.jruby.RubyHash.internalGet:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 5 /* value */
        start local 5 // org.jruby.runtime.builtin.IRubyObject value
         2: .line 1258
            aload 5 /* value */
            ifnonnull 5
         3: .line 1259
            aload 3 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 4
            aload 3 /* block */
            aload 1 /* context */
            aload 2 /* key */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         4: .line 1261
      StackMap locals: org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 4 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "key not found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* key */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.inspect:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 0 /* this */
            aload 2 /* key */
            invokevirtual org.jruby.Ruby.newKeyError:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/exceptions/RaiseException;
            athrow
         5: .line 1264
      StackMap locals:
      StackMap stack:
            aload 5 /* value */
            areturn
        end local 5 // org.jruby.runtime.builtin.IRubyObject value
        end local 4 // org.jruby.Ruby runtime
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject key
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/jruby/RubyHash;
            0    6     1  context  Lorg/jruby/runtime/ThreadContext;
            0    6     2      key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    6     3    block  Lorg/jruby/runtime/Block;
            1    6     4  runtime  Lorg/jruby/Ruby;
            2    6     5    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  
      key      
      block    

  public org.jruby.runtime.builtin.IRubyObject fetch(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=8, args_size=5
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject key
        start local 3 // org.jruby.runtime.builtin.IRubyObject _default
        start local 4 // org.jruby.runtime.Block block
         0: .line 1269
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 5 /* runtime */
        start local 5 // org.jruby.Ruby runtime
         1: .line 1270
            aload 4 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            istore 6 /* blockGiven */
        start local 6 // boolean blockGiven
         2: .line 1272
            iload 6 /* blockGiven */
            ifeq 4
         3: .line 1273
            aload 5 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.BLOCK_BEATS_DEFAULT_VALUE:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "block supersedes default value argument"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
         4: .line 1276
      StackMap locals: org.jruby.Ruby int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* key */
            invokevirtual org.jruby.RubyHash.internalGet:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 7 /* value */
        start local 7 // org.jruby.runtime.builtin.IRubyObject value
         5: .line 1278
            aload 7 /* value */
            ifnonnull 8
         6: .line 1279
            iload 6 /* blockGiven */
            ifeq 7
            aload 4 /* block */
            aload 1 /* context */
            aload 2 /* key */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         7: .line 1281
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 3 /* _default */
            areturn
         8: .line 1284
      StackMap locals:
      StackMap stack:
            aload 7 /* value */
            areturn
        end local 7 // org.jruby.runtime.builtin.IRubyObject value
        end local 6 // boolean blockGiven
        end local 5 // org.jruby.Ruby runtime
        end local 4 // org.jruby.runtime.Block block
        end local 3 // org.jruby.runtime.builtin.IRubyObject _default
        end local 2 // org.jruby.runtime.builtin.IRubyObject key
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lorg/jruby/RubyHash;
            0    9     1     context  Lorg/jruby/runtime/ThreadContext;
            0    9     2         key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    9     3    _default  Lorg/jruby/runtime/builtin/IRubyObject;
            0    9     4       block  Lorg/jruby/runtime/Block;
            1    9     5     runtime  Lorg/jruby/Ruby;
            2    9     6  blockGiven  Z
            5    9     7       value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
          Name  Flags
      context   
      key       
      _default  
      block     

  public org.jruby.RubyBoolean has_key_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=2, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject key
         0: .line 1292
            aload 0 /* this */
            aload 2 /* key */
            invokevirtual org.jruby.RubyHash.internalGetEntry:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash$RubyHashEntry;
            getstatic org.jruby.RubyHash.NO_ENTRY:Lorg/jruby/RubyHash$RubyHashEntry;
            if_acmpne 1
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
      StackMap locals:
      StackMap stack: org.jruby.RubyBoolean
         2: areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject key
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2      key  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"has_key?", "key?", "include?", "member?"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      key      

  public org.jruby.RubyBoolean has_key_p(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyBoolean;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
         0: .line 1296
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 1297
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual org.jruby.RubyHash.internalGetEntry:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash$RubyHashEntry;
            getstatic org.jruby.RubyHash.NO_ENTRY:Lorg/jruby/RubyHash$RubyHashEntry;
            if_acmpne 2
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getFalse:()Lorg/jruby/RubyBoolean;
            goto 3
      StackMap locals: org.jruby.Ruby
      StackMap stack:
         2: aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getTrue:()Lorg/jruby/RubyBoolean;
      StackMap locals:
      StackMap stack: org.jruby.RubyBoolean
         3: areturn
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyHash;
            0    4     1      key  Lorg/jruby/runtime/builtin/IRubyObject;
            1    4     2  runtime  Lorg/jruby/Ruby;
    MethodParameters:
      Name  Flags
      key   

  private boolean hasValue(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject expected
         0: .line 1327
            aload 0 /* this */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.FoundIfEqualVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 2 /* expected */
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         1: .line 1328
            iconst_0
            ireturn
         2: .line 1329
      StackMap locals:
      StackMap stack: org.jruby.RubyHash$Found
            pop
         3: .line 1330
            iconst_1
            ireturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject expected
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/jruby/RubyHash;
            0    4     1   context  Lorg/jruby/runtime/ThreadContext;
            0    4     2  expected  Lorg/jruby/runtime/builtin/IRubyObject;
      Exception table:
        from    to  target  type
           0     1       2  Class org.jruby.RubyHash$Found
    MethodParameters:
          Name  Flags
      context   
      expected  

  public org.jruby.RubyBoolean has_value_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=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject expected
         0: .line 1348
            aload 1 /* context */
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* expected */
            invokevirtual org.jruby.RubyHash.hasValue:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Z
            invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject expected
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/jruby/RubyHash;
            0    1     1   context  Lorg/jruby/runtime/ThreadContext;
            0    1     2  expected  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"has_value?", "value?"}, required = 1)
    MethodParameters:
          Name  Flags
      context   
      expected  

  private void iteratorEntry();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 1365
            getstatic org.jruby.RubyHash.ITERATOR_UPDATER:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
            ifnonnull 3
         1: .line 1366
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorEntrySync:()V
         2: .line 1367
            return
         3: .line 1369
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.RubyHash.ITERATOR_UPDATER:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
            aload 0 /* this */
            invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.incrementAndGet:(Ljava/lang/Object;)I
            pop
         4: .line 1370
            return
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/jruby/RubyHash;

  private void iteratorExit();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 1373
            getstatic org.jruby.RubyHash.ITERATOR_UPDATER:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
            ifnonnull 3
         1: .line 1374
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorExitSync:()V
         2: .line 1375
            return
         3: .line 1377
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.RubyHash.ITERATOR_UPDATER:Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
            aload 0 /* this */
            invokevirtual java.util.concurrent.atomic.AtomicIntegerFieldUpdater.decrementAndGet:(Ljava/lang/Object;)I
            pop
         4: .line 1378
            return
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/jruby/RubyHash;

  private synchronized void iteratorEntrySync();
    descriptor: ()V
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 1381
            aload 0 /* this */
            dup
            getfield org.jruby.RubyHash.iteratorCount:I
            iconst_1
            iadd
            putfield org.jruby.RubyHash.iteratorCount:I
         1: .line 1382
            return
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyHash;

  private synchronized void iteratorExitSync();
    descriptor: ()V
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 1385
            aload 0 /* this */
            dup
            getfield org.jruby.RubyHash.iteratorCount:I
            iconst_1
            isub
            putfield org.jruby.RubyHash.iteratorCount:I
         1: .line 1386
            return
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyHash;

  private <T> void iteratorVisitAll(org.jruby.runtime.ThreadContext, org.jruby.RubyHash$VisitorWithState<T>, );
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.RubyHash$VisitorWithState visitor
        start local 3 // java.lang.Object state
         0: .line 1390
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorEntry:()V
         1: .line 1391
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* visitor */
            aload 3 /* state */
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         2: .line 1392
            goto 6
      StackMap locals:
      StackMap stack: java.lang.Throwable
         3: astore 4
         4: .line 1393
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorExit:()V
         5: .line 1394
            aload 4
            athrow
         6: .line 1393
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorExit:()V
         7: .line 1395
            return
        end local 3 // java.lang.Object state
        end local 2 // org.jruby.RubyHash$VisitorWithState visitor
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/RubyHash;
            0    8     1  context  Lorg/jruby/runtime/ThreadContext;
            0    8     2  visitor  Lorg/jruby/RubyHash$VisitorWithState<TT;>;
            0    8     3    state  TT;
      Exception table:
        from    to  target  type
           0     3       3  any
    Signature: <T:Ljava/lang/Object;>(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState<TT;>;TT;)V
    MethodParameters:
         Name  Flags
      context  
      visitor  
      state    

  public org.jruby.RubyHash eachCommon(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1401
            aload 0 /* this */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.YieldArrayVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.iteratorVisitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         1: .line 1403
            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.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyHash;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    block  Lorg/jruby/runtime/Block;
    MethodParameters:
         Name  Flags
      context  final
      block    final

  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=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1415
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 1
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.each_pairCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyHash;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* context */
            aload 0 /* this */
            ldc "each"
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.enumSizeFn:()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;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"each", "each_pair"})
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.runtime.builtin.IRubyObject each19(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.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1419
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.each:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    block  Lorg/jruby/runtime/Block;
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.RubyHash each_pairCommon(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1426
            aload 0 /* this */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.YieldKeyValueArrayVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.iteratorVisitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         1: .line 1428
            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.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyHash;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    block  Lorg/jruby/runtime/Block;
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.RubyHash each_valueCommon(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1442
            aload 0 /* this */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.YieldValueVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.iteratorVisitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         1: .line 1444
            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.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyHash;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    block  Lorg/jruby/runtime/Block;
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.runtime.builtin.IRubyObject each_value(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=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1456
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 1
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.each_valueCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyHash;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* context */
            aload 0 /* this */
            ldc "each_value"
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.enumSizeFn:()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;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.RubyHash each_keyCommon(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1463
            aload 0 /* this */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.YieldKeyVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.iteratorVisitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         1: .line 1465
            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.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyHash;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    block  Lorg/jruby/runtime/Block;
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.runtime.builtin.IRubyObject each_key(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=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1477
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 1
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.each_keyCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyHash;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* context */
            aload 0 /* this */
            ldc "each_key"
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.enumSizeFn:()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;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.runtime.builtin.IRubyObject transform_keys(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=4, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1482
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 4
         1: .line 1483
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyHash.newHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
            astore 3 /* result */
        start local 3 // org.jruby.RubyHash result
         2: .line 1484
            aload 0 /* this */
            aload 1 /* context */
            new org.jruby.RubyHash$TransformKeysVisitor
            dup
            aload 2 /* block */
            invokespecial org.jruby.RubyHash$TransformKeysVisitor.<init>:(Lorg/jruby/runtime/Block;)V
            aload 3 /* result */
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         3: .line 1485
            aload 3 /* result */
            areturn
        end local 3 // org.jruby.RubyHash result
         4: .line 1488
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 0 /* this */
            ldc "transform_keys"
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.enumSizeFn:()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
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/RubyHash;
            0    5     1  context  Lorg/jruby/runtime/ThreadContext;
            0    5     2    block  Lorg/jruby/runtime/Block;
            2    4     3   result  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"transform_keys"})
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.runtime.builtin.IRubyObject transform_values(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=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1507
            new org.jruby.RubyHash
            dup
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getHash:()Lorg/jruby/RubyClass;
            aload 0 /* this */
            invokespecial org.jruby.RubyHash.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Lorg/jruby/RubyHash;)V
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.transform_values_bang:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"transform_values"})
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.runtime.builtin.IRubyObject transform_keys_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=8, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1512
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 13
         1: .line 1513
            aload 0 /* this */
            ldc "Hash"
            invokevirtual org.jruby.RubyHash.testFrozen:(Ljava/lang/String;)V
         2: .line 1514
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.flatten:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyArray
            astore 3 /* pairs */
        start local 3 // org.jruby.RubyArray pairs
         3: .line 1515
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.clear:()V
         4: .line 1516
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         5: goto 11
         6: .line 1517
      StackMap locals: org.jruby.RubyArray int
      StackMap stack:
            aload 3 /* pairs */
            iload 4 /* i */
            i2l
            invokevirtual org.jruby.RubyArray.eltOk:(J)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 5 /* key */
        start local 5 // org.jruby.runtime.builtin.IRubyObject key
         7: .line 1518
            aload 2 /* block */
            aload 1 /* context */
            aload 5 /* key */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 6 /* newKey */
        start local 6 // org.jruby.runtime.builtin.IRubyObject newKey
         8: .line 1519
            aload 3 /* pairs */
            iload 4 /* i */
            iconst_1
            iadd
            i2l
            invokevirtual org.jruby.RubyArray.eltOk:(J)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 7 /* value */
        start local 7 // org.jruby.runtime.builtin.IRubyObject value
         9: .line 1520
            aload 0 /* this */
            aload 1 /* context */
            aload 6 /* newKey */
            aload 7 /* value */
            invokevirtual org.jruby.RubyHash.op_aset:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        end local 7 // org.jruby.runtime.builtin.IRubyObject value
        end local 6 // org.jruby.runtime.builtin.IRubyObject newKey
        end local 5 // org.jruby.runtime.builtin.IRubyObject key
        10: .line 1516
            iinc 4 /* i */ 2
      StackMap locals:
      StackMap stack:
        11: iload 4 /* i */
            aload 3 /* pairs */
            invokevirtual org.jruby.RubyArray.size:()I
            if_icmplt 6
        end local 4 // int i
        12: .line 1522
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.RubyArray pairs
        13: .line 1525
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 0 /* this */
            ldc "transform_keys!"
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.enumSizeFn:()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
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Lorg/jruby/RubyHash;
            0   14     1  context  Lorg/jruby/runtime/ThreadContext;
            0   14     2    block  Lorg/jruby/runtime/Block;
            3   13     3    pairs  Lorg/jruby/RubyArray;
            5   12     4        i  I
            7   10     5      key  Lorg/jruby/runtime/builtin/IRubyObject;
            8   10     6   newKey  Lorg/jruby/runtime/builtin/IRubyObject;
            9   10     7    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"transform_keys!"})
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.runtime.builtin.IRubyObject transform_values_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=4, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1530
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 5
         1: .line 1531
            aload 0 /* this */
            ldc "Hash"
            invokevirtual org.jruby.RubyHash.testFrozen:(Ljava/lang/String;)V
         2: .line 1532
            new org.jruby.RubyHash$TransformValuesVisitor
            dup
            invokespecial org.jruby.RubyHash$TransformValuesVisitor.<init>:()V
            astore 3 /* tvf */
        start local 3 // org.jruby.RubyHash$TransformValuesVisitor tvf
         3: .line 1533
            aload 0 /* this */
            aload 1 /* context */
            aload 3 /* tvf */
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.iteratorVisitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         4: .line 1534
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.RubyHash$TransformValuesVisitor tvf
         5: .line 1537
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 0 /* this */
            ldc "transform_values!"
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.enumSizeFn:()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
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/jruby/RubyHash;
            0    6     1  context  Lorg/jruby/runtime/ThreadContext;
            0    6     2    block  Lorg/jruby/runtime/Block;
            3    5     3      tvf  Lorg/jruby/RubyHash$TransformValuesVisitor;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"transform_values!"})
    MethodParameters:
         Name  Flags
      context  final
      block    final

  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=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1550
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 3
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.keep_ifCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Z
            ifeq 1
            aload 0 /* this */
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
         3: .line 1552
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 0 /* this */
            ldc "select!"
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.enumSizeFn:()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
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyHash;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"select!"})
    MethodParameters:
         Name  Flags
      context  final
      block    final

  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=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1557
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 3
         1: .line 1558
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.keep_ifCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Z
            pop
         2: .line 1559
            aload 0 /* this */
            areturn
         3: .line 1562
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 0 /* this */
            ldc "keep_if"
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.enumSizeFn:()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
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyHash;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public boolean keep_ifCommon(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1566
            aload 0 /* this */
            ldc "Hash"
            invokevirtual org.jruby.RubyHash.testFrozen:(Ljava/lang/String;)V
         1: .line 1567
            new org.jruby.RubyHash$KeepIfVisitor
            dup
            invokespecial org.jruby.RubyHash$KeepIfVisitor.<init>:()V
            astore 3 /* kif */
        start local 3 // org.jruby.RubyHash$KeepIfVisitor kif
         2: .line 1568
            aload 0 /* this */
            aload 1 /* context */
            aload 3 /* kif */
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.iteratorVisitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         3: .line 1569
            aload 3 /* kif */
            getfield org.jruby.RubyHash$KeepIfVisitor.modified:Z
            ireturn
        end local 3 // org.jruby.RubyHash$KeepIfVisitor kif
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyHash;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2    block  Lorg/jruby/runtime/Block;
            2    4     3      kif  Lorg/jruby/RubyHash$KeepIfVisitor;
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.runtime.builtin.IRubyObject sort(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.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1585
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.to_a:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyArray;
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyArray.sort_bang:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      block    

  public org.jruby.runtime.builtin.IRubyObject index(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.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject expected
         0: .line 1593
            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.DEPRECATED_METHOD:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "Hash#index is deprecated; use Hash#key"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
         1: .line 1594
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* expected */
            invokevirtual org.jruby.RubyHash.key:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject expected
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/jruby/RubyHash;
            0    2     1   context  Lorg/jruby/runtime/ThreadContext;
            0    2     2  expected  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"index"})
    MethodParameters:
          Name  Flags
      context   
      expected  

  public org.jruby.runtime.builtin.IRubyObject index19(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.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject expected
         0: .line 1599
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* expected */
            invokevirtual org.jruby.RubyHash.index:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject expected
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/jruby/RubyHash;
            0    1     1   context  Lorg/jruby/runtime/ThreadContext;
            0    1     2  expected  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      context   
      expected  

  public org.jruby.runtime.builtin.IRubyObject key(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=4, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject expected
         0: .line 1604
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* expected */
            invokevirtual org.jruby.RubyHash.internalIndex:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* key */
        start local 3 // org.jruby.runtime.builtin.IRubyObject key
         1: .line 1605
            aload 3 /* key */
            ifnull 2
            aload 3 /* key */
            goto 3
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
         2: aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         3: areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject key
        end local 2 // org.jruby.runtime.builtin.IRubyObject expected
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/jruby/RubyHash;
            0    4     1   context  Lorg/jruby/runtime/ThreadContext;
            0    4     2  expected  Lorg/jruby/runtime/builtin/IRubyObject;
            1    4     3       key  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
          Name  Flags
      context   
      expected  

  private org.jruby.runtime.builtin.IRubyObject internalIndex(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: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject expected
         0: .line 1610
            aload 0 /* this */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.FoundKeyIfEqual:Lorg/jruby/RubyHash$VisitorWithState;
            aload 2 /* expected */
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         1: .line 1611
            aconst_null
            areturn
         2: .line 1612
      StackMap locals:
      StackMap stack: org.jruby.RubyHash$FoundKey
            astore 3 /* found */
        start local 3 // org.jruby.RubyHash$FoundKey found
         3: .line 1613
            aload 3 /* found */
            getfield org.jruby.RubyHash$FoundKey.key:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.RubyHash$FoundKey found
        end local 2 // org.jruby.runtime.builtin.IRubyObject expected
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/jruby/RubyHash;
            0    4     1   context  Lorg/jruby/runtime/ThreadContext;
            0    4     2  expected  Lorg/jruby/runtime/builtin/IRubyObject;
            3    4     3     found  Lorg/jruby/RubyHash$FoundKey;
      Exception table:
        from    to  target  type
           0     1       2  Class org.jruby.RubyHash$FoundKey
    MethodParameters:
          Name  Flags
      context   final
      expected  final

  public org.jruby.RubyArray keys(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyArray;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1633
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.RubyHash.size:I
            invokestatic org.jruby.RubyArray.newBlankArrayInternal:(Lorg/jruby/Ruby;I)Lorg/jruby/RubyArray;
            astore 2 /* keys */
        start local 2 // org.jruby.RubyArray keys
         1: .line 1635
            aload 0 /* this */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.StoreKeyVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 2 /* keys */
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         2: .line 1637
            aload 2 /* keys */
         3: areturn
        end local 2 // org.jruby.RubyArray keys
         4: .line 1638
      StackMap locals:
      StackMap stack: java.lang.NegativeArraySizeException
            pop
         5: .line 1639
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.concurrentModification:()Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/jruby/RubyHash;
            0    6     1  context  Lorg/jruby/runtime/ThreadContext;
            1    4     2     keys  Lorg/jruby/RubyArray;
      Exception table:
        from    to  target  type
           0     3       4  Class java.lang.NegativeArraySizeException
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"keys"})
    MethodParameters:
         Name  Flags
      context  final

  public final org.jruby.RubyArray keys();
    descriptor: ()Lorg/jruby/RubyArray;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 1644
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.RubyHash.keys:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyArray;
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;

  public org.jruby.RubyArray values(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyArray;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1661
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.RubyHash.size:I
            invokestatic org.jruby.RubyArray.newBlankArrayInternal:(Lorg/jruby/Ruby;I)Lorg/jruby/RubyArray;
            astore 2 /* values */
        start local 2 // org.jruby.RubyArray values
         1: .line 1663
            aload 0 /* this */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.StoreValueVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 2 /* values */
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         2: .line 1665
            aload 2 /* values */
         3: areturn
        end local 2 // org.jruby.RubyArray values
         4: .line 1666
      StackMap locals:
      StackMap stack: java.lang.NegativeArraySizeException
            pop
         5: .line 1667
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.concurrentModification:()Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/jruby/RubyHash;
            0    6     1  context  Lorg/jruby/runtime/ThreadContext;
            1    4     2   values  Lorg/jruby/RubyArray;
      Exception table:
        from    to  target  type
           0     3       4  Class java.lang.NegativeArraySizeException
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"values"})
    MethodParameters:
         Name  Flags
      context  final

  public final org.jruby.RubyArray rb_values(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyArray;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1672
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.values:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyArray;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject shift(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1705
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.modify:()V
         1: .line 1707
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 2 /* entry */
        start local 2 // org.jruby.RubyHash$RubyHashEntry entry
         2: .line 1708
            aload 2 /* entry */
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            if_acmpeq 6
         3: .line 1709
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.key:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 2 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.value:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyArray.newArray:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            astore 3 /* result */
        start local 3 // org.jruby.RubyArray result
         4: .line 1710
            aload 0 /* this */
            aload 2 /* entry */
            invokevirtual org.jruby.RubyHash.internalDeleteEntry:(Lorg/jruby/RubyHash$RubyHashEntry;)Lorg/jruby/RubyHash$RubyHashEntry;
            pop
         5: .line 1711
            aload 3 /* result */
            areturn
        end local 3 // org.jruby.RubyArray result
         6: .line 1714
      StackMap locals: org.jruby.RubyHash$RubyHashEntry
      StackMap stack:
            aload 0 /* this */
            ldc "default"
            invokevirtual org.jruby.RubyHash.isBuiltin:(Ljava/lang/String;)Z
            ifeq 7
            aload 0 /* this */
            aload 1 /* context */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyHash.default_value_get:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         7: .line 1716
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            invokestatic org.jruby.RubyHash.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$HashSites;
            getfield org.jruby.runtime.JavaSites$HashSites.default_:Lorg/jruby/runtime/CallSite;
            aload 1 /* context */
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.RubyHash$RubyHashEntry entry
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/RubyHash;
            0    8     1  context  Lorg/jruby/runtime/ThreadContext;
            2    8     2    entry  Lorg/jruby/RubyHash$RubyHashEntry;
            4    6     3   result  Lorg/jruby/RubyArray;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"shift"})
    MethodParameters:
         Name  Flags
      context  

  public final boolean fastDelete(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
         0: .line 1720
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual org.jruby.RubyHash.internalDelete:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash$RubyHashEntry;
            getstatic org.jruby.RubyHash.NO_ENTRY:Lorg/jruby/RubyHash$RubyHashEntry;
            if_acmpeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyHash;
            0    2     1   key  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      key   

  public org.jruby.runtime.builtin.IRubyObject delete(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=3, locals=5, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject key
        start local 3 // org.jruby.runtime.Block block
         0: .line 1728
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.modify:()V
         1: .line 1730
            aload 0 /* this */
            aload 2 /* key */
            invokevirtual org.jruby.RubyHash.internalDelete:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash$RubyHashEntry;
            astore 4 /* entry */
        start local 4 // org.jruby.RubyHash$RubyHashEntry entry
         2: .line 1731
            aload 4 /* entry */
            getstatic org.jruby.RubyHash.NO_ENTRY:Lorg/jruby/RubyHash$RubyHashEntry;
            if_acmpeq 3
            aload 4 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.value:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 1733
      StackMap locals: org.jruby.RubyHash$RubyHashEntry
      StackMap stack:
            aload 3 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 4
            aload 3 /* block */
            aload 1 /* context */
            aload 2 /* key */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         4: .line 1734
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // org.jruby.RubyHash$RubyHashEntry entry
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject key
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/RubyHash;
            0    5     1  context  Lorg/jruby/runtime/ThreadContext;
            0    5     2      key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3    block  Lorg/jruby/runtime/Block;
            2    5     4    entry  Lorg/jruby/RubyHash$RubyHashEntry;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  
      key      
      block    

  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=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject key
         0: .line 1738
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* key */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.RubyHash.delete:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject key
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      key  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      key      

  public org.jruby.runtime.builtin.IRubyObject select(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=5, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1746
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 1747
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 2
            aload 1 /* context */
            aload 0 /* this */
            ldc "select"
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.enumSizeFn:()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 1749
      StackMap locals: org.jruby.Ruby
      StackMap stack:
            aload 3 /* runtime */
            invokestatic org.jruby.RubyHash.newHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
            astore 4 /* result */
        start local 4 // org.jruby.RubyHash result
         3: .line 1751
            aload 0 /* this */
            aload 1 /* context */
            new org.jruby.RubyHash$SelectVisitor
            dup
            aload 4 /* result */
            invokespecial org.jruby.RubyHash$SelectVisitor.<init>:(Lorg/jruby/RubyHash;)V
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.iteratorVisitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         4: .line 1753
            aload 4 /* result */
            areturn
        end local 4 // org.jruby.RubyHash result
        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.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/RubyHash;
            0    5     1  context  Lorg/jruby/runtime/ThreadContext;
            0    5     2    block  Lorg/jruby/runtime/Block;
            1    5     3  runtime  Lorg/jruby/Ruby;
            3    5     4   result  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"select"})
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.RubyHash slice(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 1762
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyHash.newHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
            astore 3 /* result */
        start local 3 // org.jruby.RubyHash result
         1: .line 1764
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 7
         3: .line 1765
      StackMap locals: org.jruby.RubyHash int
      StackMap stack:
            aload 2 /* args */
            iload 4 /* i */
            aaload
            astore 5 /* key */
        start local 5 // org.jruby.runtime.builtin.IRubyObject key
         4: .line 1766
            aload 0 /* this */
            aload 5 /* key */
            invokevirtual org.jruby.RubyHash.internalGet:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 6 /* value */
        start local 6 // org.jruby.runtime.builtin.IRubyObject value
         5: .line 1767
            aload 6 /* value */
            ifnull 6
            aload 3 /* result */
            aload 5 /* key */
            aload 6 /* value */
            invokevirtual org.jruby.RubyHash.op_aset:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        end local 6 // org.jruby.runtime.builtin.IRubyObject value
        end local 5 // org.jruby.runtime.builtin.IRubyObject key
         6: .line 1764
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            aload 2 /* args */
            arraylength
            if_icmplt 3
        end local 4 // int i
         8: .line 1770
            aload 3 /* result */
            areturn
        end local 3 // org.jruby.RubyHash result
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/jruby/RubyHash;
            0    9     1  context  Lorg/jruby/runtime/ThreadContext;
            0    9     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            1    9     3   result  Lorg/jruby/RubyHash;
            2    8     4        i  I
            4    6     5      key  Lorg/jruby/runtime/builtin/IRubyObject;
            5    6     6    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"slice"}, rest = true)
    MethodParameters:
         Name  Flags
      context  final
      args     final

  public org.jruby.runtime.builtin.IRubyObject select19(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.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1789
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.select:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      block    

  public org.jruby.RubyHash delete_ifInternal(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1796
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.modify:()V
         1: .line 1798
            aload 0 /* this */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.DeleteIfVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.iteratorVisitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         2: .line 1800
            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.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2    block  Lorg/jruby/runtime/Block;
    MethodParameters:
         Name  Flags
      context  
      block    

  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=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1814
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 1
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.delete_ifInternal:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyHash;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* context */
            aload 0 /* this */
            ldc "delete_if"
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.enumSizeFn:()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;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.RubyHash rejectInternal(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1835
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyHash.newHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
            astore 3 /* result */
        start local 3 // org.jruby.RubyHash result
         1: .line 1837
            aload 0 /* this */
            aload 1 /* context */
            new org.jruby.RubyHash$RejectVisitor
            dup
            aload 3 /* result */
            invokespecial org.jruby.RubyHash$RejectVisitor.<init>:(Lorg/jruby/RubyHash;)V
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.iteratorVisitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         2: .line 1839
            aload 3 /* result */
            areturn
        end local 3 // org.jruby.RubyHash result
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2    block  Lorg/jruby/runtime/Block;
            1    3     3   result  Lorg/jruby/RubyHash;
    MethodParameters:
         Name  Flags
      context  
      block    

  public org.jruby.runtime.builtin.IRubyObject reject(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=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1844
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 1
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.rejectInternal:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyHash;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* context */
            aload 0 /* this */
            ldc "reject"
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.enumSizeFn:()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;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.runtime.builtin.IRubyObject reject_bangInternal(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=4, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1851
            aload 0 /* this */
            getfield org.jruby.RubyHash.size:I
            istore 3 /* n */
        start local 3 // int n
         1: .line 1852
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.delete_if:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         2: .line 1853
            iload 3 /* n */
            aload 0 /* this */
            getfield org.jruby.RubyHash.size:I
            if_icmpne 3
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 1854
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 3 // int n
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyHash;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2    block  Lorg/jruby/runtime/Block;
            1    4     3        n  I
    MethodParameters:
         Name  Flags
      context  
      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=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 1859
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 1
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.reject_bangInternal:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* context */
            aload 0 /* this */
            ldc "reject!"
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.enumSizeFn:()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;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"reject!"})
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.RubyHash rb_clear(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1867
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.modify:()V
         1: .line 1869
            aload 0 /* this */
            getfield org.jruby.RubyHash.size:I
            ifle 4
         2: .line 1870
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.alloc:()V
         3: .line 1871
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyHash.size:I
         4: .line 1874
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/RubyHash;
            0    5     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"clear"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.RubyHash invert(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1882
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyHash.newHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
            astore 2 /* result */
        start local 2 // org.jruby.RubyHash result
         1: .line 1884
            aload 0 /* this */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.InvertVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 2 /* result */
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         2: .line 1886
            aload 2 /* result */
            areturn
        end local 2 // org.jruby.RubyHash result
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            1    3     2   result  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"invert"})
    MethodParameters:
         Name  Flags
      context  final

  public org.jruby.RubyHash merge_bang(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/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
        start local 3 // org.jruby.runtime.Block block
         0: .line 1901
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.modify:()V
         1: .line 1902
            aload 2 /* other */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToHash:()Lorg/jruby/RubyHash;
            astore 4 /* otherHash */
        start local 4 // org.jruby.RubyHash otherHash
         2: .line 1904
            aload 4 /* otherHash */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.empty_p:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyBoolean;
            invokevirtual org.jruby.RubyBoolean.isTrue:()Z
            ifeq 3
            aload 0 /* this */
            areturn
         3: .line 1906
      StackMap locals: org.jruby.RubyHash
      StackMap stack:
            aload 4 /* otherHash */
            aload 1 /* context */
            new org.jruby.RubyHash$MergeVisitor
            dup
            aload 0 /* this */
            invokespecial org.jruby.RubyHash$MergeVisitor.<init>:(Lorg/jruby/RubyHash;)V
            aload 3 /* block */
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         4: .line 1908
            aload 0 /* this */
            areturn
        end local 4 // org.jruby.RubyHash otherHash
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lorg/jruby/RubyHash;
            0    5     1    context  Lorg/jruby/runtime/ThreadContext;
            0    5     2      other  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3      block  Lorg/jruby/runtime/Block;
            2    5     4  otherHash  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"merge!", "update"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      other    
      block    

  public org.jruby.RubyHash merge_bang19(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/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
        start local 3 // org.jruby.runtime.Block block
         0: .line 1930
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* other */
            aload 3 /* block */
            invokevirtual org.jruby.RubyHash.merge_bang:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyHash;
            areturn
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    other  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      other    
      block    

  public org.jruby.RubyHash merge(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/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
        start local 3 // org.jruby.runtime.Block block
         0: .line 1938
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.dup:()Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyHash
            aload 1 /* context */
            aload 2 /* other */
            aload 3 /* block */
            invokevirtual org.jruby.RubyHash.merge_bang:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyHash;
            areturn
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    other  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  
      other    
      block    

  public org.jruby.RubyHash initialize_copy(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 1943
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* other */
            invokevirtual org.jruby.RubyHash.replace:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    other  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"initialize_copy"}, required = 1, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
    MethodParameters:
         Name  Flags
      context  
      other    

  public org.jruby.RubyHash initialize_copy19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 1948
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* other */
            invokevirtual org.jruby.RubyHash.initialize_copy:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    other  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      other    

  public org.jruby.RubyHash replace(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 1956
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.modify:()V
         1: .line 1958
            aload 2 /* other */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToHash:()Lorg/jruby/RubyHash;
            astore 3 /* otherHash */
        start local 3 // org.jruby.RubyHash otherHash
         2: .line 1960
            aload 0 /* this */
            aload 3 /* otherHash */
            if_acmpne 3
            aload 0 /* this */
            areturn
         3: .line 1962
      StackMap locals: org.jruby.RubyHash
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.rb_clear:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyHash;
            pop
         4: .line 1964
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.isComparedByIdentity:()Z
            ifne 6
            aload 3 /* otherHash */
            invokevirtual org.jruby.RubyHash.isComparedByIdentity:()Z
            ifeq 6
         5: .line 1965
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.RubyHash.setComparedByIdentity:(Z)V
         6: .line 1968
      StackMap locals:
      StackMap stack:
            aload 3 /* otherHash */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.ReplaceVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         7: .line 1970
            aload 0 /* this */
            aload 3 /* otherHash */
            getfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
            putfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
         8: .line 1972
            aload 3 /* otherHash */
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.PROCDEFAULT_HASH_F:I
            iand
            ifeq 11
         9: .line 1973
            aload 0 /* this */
            dup
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.PROCDEFAULT_HASH_F:I
            ior
            putfield org.jruby.RubyHash.flags:I
        10: .line 1974
            goto 12
        11: .line 1975
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.PROCDEFAULT_HASH_F:I
            iconst_m1
            ixor
            iand
            putfield org.jruby.RubyHash.flags:I
        12: .line 1978
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.RubyHash otherHash
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   13     0       this  Lorg/jruby/RubyHash;
            0   13     1    context  Lorg/jruby/runtime/ThreadContext;
            0   13     2      other  Lorg/jruby/runtime/builtin/IRubyObject;
            2   13     3  otherHash  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"replace"}, required = 1)
    MethodParameters:
         Name  Flags
      context  final
      other    

  public org.jruby.RubyArray values_at(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 1993
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* args */
            arraylength
            invokestatic org.jruby.RubyArray.newBlankArrayInternal:(Lorg/jruby/Ruby;I)Lorg/jruby/RubyArray;
            astore 3 /* result */
        start local 3 // org.jruby.RubyArray result
         1: .line 1994
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 5
         3: .line 1995
      StackMap locals: org.jruby.RubyArray int
      StackMap stack:
            aload 3 /* result */
            iload 4 /* i */
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* args */
            iload 4 /* i */
            aaload
            invokevirtual org.jruby.RubyHash.op_aref:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyArray.storeInternal:(ILorg/jruby/runtime/builtin/IRubyObject;)V
         4: .line 1994
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 4 /* i */
            aload 2 /* args */
            arraylength
            if_icmplt 3
        end local 4 // int i
         6: .line 1997
            aload 3 /* result */
            areturn
        end local 3 // org.jruby.RubyArray result
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/jruby/RubyHash;
            0    7     1  context  Lorg/jruby/runtime/ThreadContext;
            0    7     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            1    7     3   result  Lorg/jruby/RubyArray;
            2    6     4        i  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"values_at"}, rest = true)
    MethodParameters:
         Name  Flags
      context  
      args     

  public org.jruby.RubyArray fetch_values(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/RubyArray;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.jruby.RubyHash 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 2002
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* args */
            arraylength
            invokestatic org.jruby.RubyArray.newBlankArrayInternal:(Lorg/jruby/Ruby;I)Lorg/jruby/RubyArray;
            astore 4 /* result */
        start local 4 // org.jruby.RubyArray result
         1: .line 2003
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         2: goto 5
         3: .line 2004
      StackMap locals: org.jruby.RubyArray int
      StackMap stack:
            aload 4 /* result */
            iload 5 /* i */
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* args */
            iload 5 /* i */
            aaload
            aload 3 /* block */
            invokevirtual org.jruby.RubyHash.fetch:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyArray.storeInternal:(ILorg/jruby/runtime/builtin/IRubyObject;)V
         4: .line 2003
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 5 /* i */
            aload 2 /* args */
            arraylength
            if_icmplt 3
        end local 5 // int i
         6: .line 2006
            aload 4 /* result */
            areturn
        end local 4 // org.jruby.RubyArray result
        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.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/jruby/RubyHash;
            0    7     1  context  Lorg/jruby/runtime/ThreadContext;
            0    7     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    7     3    block  Lorg/jruby/runtime/Block;
            1    7     4   result  Lorg/jruby/RubyArray;
            2    6     5        i  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"fetch_values"}, rest = true)
    MethodParameters:
         Name  Flags
      context  
      args     
      block    

  public org.jruby.runtime.builtin.IRubyObject assoc(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=4, locals=4, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 2012
            aload 0 /* this */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.FoundPairIfEqualKeyVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 2 /* obj */
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         1: .line 2013
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
         2: areturn
         3: .line 2014
      StackMap locals:
      StackMap stack: org.jruby.RubyHash$FoundPair
            astore 3 /* found */
        start local 3 // org.jruby.RubyHash$FoundPair found
         4: .line 2015
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 3 /* found */
            getfield org.jruby.RubyHash$FoundPair.key:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 3 /* found */
            getfield org.jruby.RubyHash$FoundPair.value:Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.Ruby.newArray:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
        end local 3 // org.jruby.RubyHash$FoundPair found
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/RubyHash;
            0    5     1  context  Lorg/jruby/runtime/ThreadContext;
            0    5     2      obj  Lorg/jruby/runtime/builtin/IRubyObject;
            4    5     3    found  Lorg/jruby/RubyHash$FoundPair;
      Exception table:
        from    to  target  type
           0     2       3  Class org.jruby.RubyHash$FoundPair
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"assoc"})
    MethodParameters:
         Name  Flags
      context  final
      obj      final

  public org.jruby.runtime.builtin.IRubyObject rassoc(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=4, locals=4, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 2022
            aload 0 /* this */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.FoundPairIfEqualValueVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 2 /* obj */
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         1: .line 2023
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
         2: areturn
         3: .line 2024
      StackMap locals:
      StackMap stack: org.jruby.RubyHash$FoundPair
            astore 3 /* found */
        start local 3 // org.jruby.RubyHash$FoundPair found
         4: .line 2025
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 3 /* found */
            getfield org.jruby.RubyHash$FoundPair.key:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 3 /* found */
            getfield org.jruby.RubyHash$FoundPair.value:Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.Ruby.newArray:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
        end local 3 // org.jruby.RubyHash$FoundPair found
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/RubyHash;
            0    5     1  context  Lorg/jruby/runtime/ThreadContext;
            0    5     2      obj  Lorg/jruby/runtime/builtin/IRubyObject;
            4    5     3    found  Lorg/jruby/RubyHash$FoundPair;
      Exception table:
        from    to  target  type
           0     2       3  Class org.jruby.RubyHash$FoundPair
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"rassoc"})
    MethodParameters:
         Name  Flags
      context  final
      obj      final

  public org.jruby.runtime.builtin.IRubyObject flatten(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 2049
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.to_a:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyArray;
            astore 2 /* ary */
        start local 2 // org.jruby.RubyArray ary
         1: .line 2050
            aload 1 /* context */
            invokestatic org.jruby.RubyHash.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$HashSites;
            getfield org.jruby.runtime.JavaSites$HashSites.flatten_bang:Lorg/jruby/runtime/CallSite;
            aload 1 /* context */
            aload 2 /* ary */
            aload 2 /* ary */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         2: .line 2051
            aload 2 /* ary */
            areturn
        end local 2 // org.jruby.RubyArray ary
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            1    3     2      ary  Lorg/jruby/RubyArray;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject flatten(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=4, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject level
         0: .line 2056
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.to_a:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyArray;
            astore 3 /* ary */
        start local 3 // org.jruby.RubyArray ary
         1: .line 2057
            aload 1 /* context */
            invokestatic org.jruby.RubyHash.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$HashSites;
            getfield org.jruby.runtime.JavaSites$HashSites.flatten_bang:Lorg/jruby/runtime/CallSite;
            aload 1 /* context */
            aload 3 /* ary */
            aload 3 /* ary */
            aload 2 /* level */
            invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         2: .line 2058
            aload 3 /* ary */
            areturn
        end local 3 // org.jruby.RubyArray ary
        end local 2 // org.jruby.runtime.builtin.IRubyObject level
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2    level  Lorg/jruby/runtime/builtin/IRubyObject;
            1    3     3      ary  Lorg/jruby/RubyArray;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  
      level    

  public org.jruby.runtime.builtin.IRubyObject compact(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.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 2063
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.dup:()Lorg/jruby/runtime/builtin/IRubyObject;
            astore 2 /* res */
        start local 2 // org.jruby.runtime.builtin.IRubyObject res
         1: .line 2064
            aload 2 /* res */
            checkcast org.jruby.RubyHash
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.compact_bang:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         2: .line 2065
            aload 2 /* res */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject res
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            1    3     2      res  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"compact"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject compact_bang(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 2070
            iconst_0
            istore 2 /* changed */
        start local 2 // boolean changed
         1: .line 2071
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.modify:()V
         2: .line 2072
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorEntry:()V
         3: .line 2074
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 3 /* entry */
        start local 3 // org.jruby.RubyHash$RubyHashEntry entry
         4: goto 9
         5: .line 2075
      StackMap locals: int org.jruby.RubyHash$RubyHashEntry
      StackMap stack:
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.value:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 8
         6: .line 2076
            aload 0 /* this */
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.key:Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyHash.internalDelete:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash$RubyHashEntry;
            pop
         7: .line 2077
            iconst_1
            istore 2 /* changed */
         8: .line 2074
      StackMap locals:
      StackMap stack:
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 3 /* entry */
      StackMap locals:
      StackMap stack:
         9: aload 3 /* entry */
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            if_acmpne 5
        end local 3 // org.jruby.RubyHash$RubyHashEntry entry
        10: .line 2080
            goto 14
      StackMap locals: org.jruby.RubyHash org.jruby.runtime.ThreadContext int
      StackMap stack: java.lang.Throwable
        11: astore 4
        12: .line 2081
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorExit:()V
        13: .line 2082
            aload 4
            athrow
        14: .line 2081
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorExit:()V
        15: .line 2083
            iload 2 /* changed */
            ifeq 16
            aload 0 /* this */
            goto 17
      StackMap locals:
      StackMap stack:
        16: aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
        17: areturn
        end local 2 // boolean changed
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   18     0     this  Lorg/jruby/RubyHash;
            0   18     1  context  Lorg/jruby/runtime/ThreadContext;
            1   18     2  changed  Z
            4   10     3    entry  Lorg/jruby/RubyHash$RubyHashEntry;
      Exception table:
        from    to  target  type
           3    11      11  any
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"compact!"})
    MethodParameters:
         Name  Flags
      context  

  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.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 2088
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.modify:()V
         1: .line 2089
            aload 0 /* this */
            iconst_1
            invokevirtual org.jruby.RubyHash.setComparedByIdentity:(Z)V
         2: .line 2090
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.rehash:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyHash;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"compare_by_identity"})
    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.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 2095
            aload 1 /* context */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.isComparedByIdentity:()Z
            invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"compare_by_identity?"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject dup(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.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 2100
            aload 0 /* this */
            invokespecial org.jruby.RubyObject.dup:()Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyHash
            astore 2 /* dup */
        start local 2 // org.jruby.RubyHash dup
         1: .line 2101
            aload 2 /* dup */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.isComparedByIdentity:()Z
            invokevirtual org.jruby.RubyHash.setComparedByIdentity:(Z)V
         2: .line 2102
            aload 2 /* dup */
            areturn
        end local 2 // org.jruby.RubyHash dup
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            1    3     2      dup  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject rbClone(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.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 2107
            aload 0 /* this */
            invokespecial org.jruby.RubyObject.rbClone:()Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyHash
            astore 2 /* clone */
        start local 2 // org.jruby.RubyHash clone
         1: .line 2108
            aload 2 /* clone */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.isComparedByIdentity:()Z
            invokevirtual org.jruby.RubyHash.setComparedByIdentity:(Z)V
         2: .line 2109
            aload 2 /* clone */
            areturn
        end local 2 // org.jruby.RubyHash clone
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            1    3     2    clone  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"clone"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject any_p(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=3, locals=6, args_size=4
        start local 0 // org.jruby.RubyHash 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 2114
            aload 2 /* args */
            arraylength
            ifle 1
            aload 2 /* args */
            iconst_0
            aaload
            goto 2
      StackMap locals:
      StackMap stack:
         1: aconst_null
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: astore 4 /* pattern */
        start local 4 // org.jruby.runtime.builtin.IRubyObject pattern
         3: .line 2115
            aload 4 /* pattern */
            ifnull 4
            iconst_1
            goto 5
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: istore 5 /* patternGiven */
        start local 5 // boolean patternGiven
         6: .line 2117
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.isEmpty:()Z
            ifeq 7
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
         7: .line 2119
      StackMap locals: int
      StackMap stack:
            aload 3 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 8
            iload 5 /* patternGiven */
            ifne 8
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
            areturn
         8: .line 2120
      StackMap locals:
      StackMap stack:
            iload 5 /* patternGiven */
            ifeq 9
            aload 0 /* this */
            aload 1 /* context */
            aload 4 /* pattern */
            invokevirtual org.jruby.RubyHash.any_p_p:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         9: .line 2122
      StackMap locals:
      StackMap stack:
            aload 3 /* block */
            invokevirtual org.jruby.runtime.Block.getSignature:()Lorg/jruby/runtime/Signature;
            invokevirtual org.jruby.runtime.Signature.arityValue:()I
            iconst_1
            if_icmple 11
        10: .line 2123
            aload 0 /* this */
            aload 1 /* context */
            aload 3 /* block */
            invokevirtual org.jruby.RubyHash.any_p_i_fast:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        11: .line 2125
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 3 /* block */
            invokevirtual org.jruby.RubyHash.any_p_i:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 5 // boolean patternGiven
        end local 4 // org.jruby.runtime.builtin.IRubyObject pattern
        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.RubyHash this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   12     0          this  Lorg/jruby/RubyHash;
            0   12     1       context  Lorg/jruby/runtime/ThreadContext;
            0   12     2          args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0   12     3         block  Lorg/jruby/runtime/Block;
            3   12     4       pattern  Lorg/jruby/runtime/builtin/IRubyObject;
            6   12     5  patternGiven  Z
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"any?"}, optional = 1)
    MethodParameters:
         Name  Flags
      context  
      args     
      block    

  private org.jruby.runtime.builtin.IRubyObject any_p_i(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=3, locals=7, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 2129
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorEntry:()V
         1: .line 2131
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 3 /* entry */
        start local 3 // org.jruby.RubyHash$RubyHashEntry entry
         2: goto 9
         3: .line 2132
      StackMap locals: org.jruby.RubyHash$RubyHashEntry
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.key:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.value:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyArray.newArray:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            astore 4 /* newAssoc */
        start local 4 // org.jruby.runtime.builtin.IRubyObject newAssoc
         4: .line 2133
            aload 2 /* block */
            aload 1 /* context */
            aload 4 /* newAssoc */
            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 8
         5: .line 2134
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
            astore 6
         6: .line 2138
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorExit:()V
         7: .line 2134
            aload 6
            areturn
        end local 4 // org.jruby.runtime.builtin.IRubyObject newAssoc
         8: .line 2131
      StackMap locals:
      StackMap stack:
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 3 /* entry */
      StackMap locals:
      StackMap stack:
         9: aload 3 /* entry */
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            if_acmpne 3
        end local 3 // org.jruby.RubyHash$RubyHashEntry entry
        10: .line 2136
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            astore 6
        11: .line 2138
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorExit:()V
        12: .line 2136
            aload 6
            areturn
        13: .line 2137
      StackMap locals: org.jruby.RubyHash org.jruby.runtime.ThreadContext org.jruby.runtime.Block
      StackMap stack: java.lang.Throwable
            astore 5
        14: .line 2138
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorExit:()V
        15: .line 2139
            aload 5
            athrow
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   16     0      this  Lorg/jruby/RubyHash;
            0   16     1   context  Lorg/jruby/runtime/ThreadContext;
            0   16     2     block  Lorg/jruby/runtime/Block;
            2   10     3     entry  Lorg/jruby/RubyHash$RubyHashEntry;
            4    8     4  newAssoc  Lorg/jruby/runtime/builtin/IRubyObject;
      Exception table:
        from    to  target  type
           1     6      13  any
           8    11      13  any
    MethodParameters:
         Name  Flags
      context  
      block    

  private org.jruby.runtime.builtin.IRubyObject any_p_i_fast(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=5, locals=6, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 2143
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorEntry:()V
         1: .line 2145
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 3 /* entry */
        start local 3 // org.jruby.RubyHash$RubyHashEntry entry
         2: goto 8
         3: .line 2146
      StackMap locals: org.jruby.RubyHash$RubyHashEntry
      StackMap stack:
            aload 2 /* block */
            aload 1 /* context */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.key:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.value:Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.Ruby.newArray:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            aconst_null
            invokevirtual org.jruby.runtime.Block.yieldArray:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 7
         4: .line 2147
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
            astore 5
         5: .line 2151
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorExit:()V
         6: .line 2147
            aload 5
            areturn
         7: .line 2145
      StackMap locals:
      StackMap stack:
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 3 /* entry */
      StackMap locals:
      StackMap stack:
         8: aload 3 /* entry */
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            if_acmpne 3
        end local 3 // org.jruby.RubyHash$RubyHashEntry entry
         9: .line 2149
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            astore 5
        10: .line 2151
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorExit:()V
        11: .line 2149
            aload 5
            areturn
        12: .line 2150
      StackMap locals: org.jruby.RubyHash org.jruby.runtime.ThreadContext org.jruby.runtime.Block
      StackMap stack: java.lang.Throwable
            astore 4
        13: .line 2151
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorExit:()V
        14: .line 2152
            aload 4
            athrow
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   15     0     this  Lorg/jruby/RubyHash;
            0   15     1  context  Lorg/jruby/runtime/ThreadContext;
            0   15     2    block  Lorg/jruby/runtime/Block;
            2    9     3    entry  Lorg/jruby/RubyHash$RubyHashEntry;
      Exception table:
        from    to  target  type
           1     5      12  any
           7    10      12  any
    MethodParameters:
         Name  Flags
      context  
      block    

  private org.jruby.runtime.builtin.IRubyObject any_p_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: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject pattern
         0: .line 2156
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorEntry:()V
         1: .line 2158
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 3 /* entry */
        start local 3 // org.jruby.RubyHash$RubyHashEntry entry
         2: goto 9
         3: .line 2159
      StackMap locals: org.jruby.RubyHash$RubyHashEntry
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.key:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.value:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyArray.newArray:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            astore 4 /* newAssoc */
        start local 4 // org.jruby.runtime.builtin.IRubyObject newAssoc
         4: .line 2160
            aload 2 /* pattern */
            aload 1 /* context */
            ldc "==="
            aload 4 /* newAssoc */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 8
         5: .line 2161
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
            astore 6
         6: .line 2165
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorExit:()V
         7: .line 2161
            aload 6
            areturn
        end local 4 // org.jruby.runtime.builtin.IRubyObject newAssoc
         8: .line 2158
      StackMap locals:
      StackMap stack:
            aload 3 /* entry */
            getfield org.jruby.RubyHash$RubyHashEntry.nextAdded:Lorg/jruby/RubyHash$RubyHashEntry;
            astore 3 /* entry */
      StackMap locals:
      StackMap stack:
         9: aload 3 /* entry */
            aload 0 /* this */
            getfield org.jruby.RubyHash.head:Lorg/jruby/RubyHash$RubyHashEntry;
            if_acmpne 3
        end local 3 // org.jruby.RubyHash$RubyHashEntry entry
        10: .line 2163
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            astore 6
        11: .line 2165
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorExit:()V
        12: .line 2163
            aload 6
            areturn
        13: .line 2164
      StackMap locals: org.jruby.RubyHash org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject
      StackMap stack: java.lang.Throwable
            astore 5
        14: .line 2165
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.iteratorExit:()V
        15: .line 2166
            aload 5
            athrow
        end local 2 // org.jruby.runtime.builtin.IRubyObject pattern
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   16     0      this  Lorg/jruby/RubyHash;
            0   16     1   context  Lorg/jruby/runtime/ThreadContext;
            0   16     2   pattern  Lorg/jruby/runtime/builtin/IRubyObject;
            2   10     3     entry  Lorg/jruby/RubyHash$RubyHashEntry;
            4    8     4  newAssoc  Lorg/jruby/runtime/builtin/IRubyObject;
      Exception table:
        from    to  target  type
           1     6      13  any
           8    11      13  any
    MethodParameters:
         Name  Flags
      context  
      pattern  

  public org.jruby.RubyHash dupFast(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 2177
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 2178
            new org.jruby.RubyHash
            dup
            aload 2 /* runtime */
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            aload 0 /* this */
            invokespecial org.jruby.RubyHash.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Lorg/jruby/RubyHash;)V
            astore 3 /* dup */
        start local 3 // org.jruby.RubyHash dup
         2: .line 2180
            aload 3 /* dup */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.isComparedByIdentity:()Z
            invokevirtual org.jruby.RubyHash.setComparedByIdentity:(Z)V
         3: .line 2182
            aload 3 /* dup */
            aload 0 /* this */
            getfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
            putfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
         4: .line 2184
            aload 0 /* this */
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.PROCDEFAULT_HASH_F:I
            iand
            ifeq 7
         5: .line 2185
            aload 3 /* dup */
            dup
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.PROCDEFAULT_HASH_F:I
            ior
            putfield org.jruby.RubyHash.flags:I
         6: .line 2186
            goto 8
         7: .line 2187
      StackMap locals: org.jruby.Ruby org.jruby.RubyHash
      StackMap stack:
            aload 3 /* dup */
            dup
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.PROCDEFAULT_HASH_F:I
            iconst_m1
            ixor
            iand
            putfield org.jruby.RubyHash.flags:I
         8: .line 2190
      StackMap locals:
      StackMap stack:
            aload 3 /* dup */
            areturn
        end local 3 // org.jruby.RubyHash dup
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/jruby/RubyHash;
            0    9     1  context  Lorg/jruby/runtime/ThreadContext;
            1    9     2  runtime  Lorg/jruby/Ruby;
            2    9     3      dup  Lorg/jruby/RubyHash;
    MethodParameters:
         Name  Flags
      context  final

  public boolean hasDefaultProc();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2194
            aload 0 /* this */
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.PROCDEFAULT_HASH_F:I
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyHash;

  public org.jruby.runtime.builtin.IRubyObject getIfNone();
    descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2198
            aload 0 /* this */
            getfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;

  public org.jruby.runtime.builtin.IRubyObject dig(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=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 2203
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* args */
            iconst_0
            invokevirtual org.jruby.RubyHash.dig:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;I)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"dig"}, required = 1, rest = true)
    MethodParameters:
         Name  Flags
      context  
      args     

  final org.jruby.runtime.builtin.IRubyObject dig(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;I)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 3 // int idx
         0: .line 2207
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* args */
            iload 3 /* idx */
            iinc 3 /* idx */ 1
            aaload
            invokevirtual org.jruby.RubyHash.op_aref:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 4 /* val */
        start local 4 // org.jruby.runtime.builtin.IRubyObject val
         1: .line 2208
            iload 3 /* idx */
            aload 2 /* args */
            arraylength
            if_icmpne 2
            aload 4 /* val */
            goto 3
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
         2: aload 1 /* context */
            aload 4 /* val */
            aload 2 /* args */
            iload 3 /* idx */
            invokestatic org.jruby.RubyObject.dig:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;I)Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         3: areturn
        end local 4 // org.jruby.runtime.builtin.IRubyObject val
        end local 3 // int idx
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyHash;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     3      idx  I
            1    4     4      val  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      args     
      idx      

  public org.jruby.runtime.builtin.IRubyObject to_proc(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 2214
            aload 0 /* this */
         1: .line 2215
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
         2: .line 2216
            getstatic org.jruby.runtime.Signature.ONE_ARGUMENT:Lorg/jruby/runtime/Signature;
         3: .line 2217
            aload 0 /* this */
            invokedynamic call(Lorg/jruby/RubyHash;)Lorg/jruby/runtime/BlockCallback;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
                  org/jruby/RubyHash.lambda$1(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject; (7)
                  (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
         4: .line 2221
            aload 1 /* context */
         5: .line 2213
            invokestatic org.jruby.runtime.CallBlock19.newCallClosure:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Lorg/jruby/runtime/Signature;Lorg/jruby/runtime/BlockCallback;Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/Block;
            astore 2 /* block */
        start local 2 // org.jruby.runtime.Block block
         6: .line 2223
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* block */
            getstatic org.jruby.runtime.Block$Type.PROC:Lorg/jruby/runtime/Block$Type;
            invokestatic org.jruby.RubyProc.newProc:(Lorg/jruby/Ruby;Lorg/jruby/runtime/Block;Lorg/jruby/runtime/Block$Type;)Lorg/jruby/RubyProc;
            areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/jruby/RubyHash;
            0    7     1  context  Lorg/jruby/runtime/ThreadContext;
            6    7     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public static void marshalTo(org.jruby.RubyHash, org.jruby.runtime.marshal.MarshalStream);
    descriptor: (Lorg/jruby/RubyHash;Lorg/jruby/runtime/marshal/MarshalStream;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // org.jruby.RubyHash hash
        start local 1 // org.jruby.runtime.marshal.MarshalStream output
         0: .line 2235
            aload 1 /* output */
            aload 0 /* hash */
            invokevirtual org.jruby.runtime.marshal.MarshalStream.registerLinkTarget:(Lorg/jruby/runtime/builtin/IRubyObject;)V
         1: .line 2236
            aload 0 /* hash */
            getfield org.jruby.RubyHash.size:I
            istore 2 /* hashSize */
        start local 2 // int hashSize
         2: .line 2237
            aload 1 /* output */
            iload 2 /* hashSize */
            invokevirtual org.jruby.runtime.marshal.MarshalStream.writeInt:(I)V
         3: .line 2239
            aload 0 /* hash */
            aload 0 /* hash */
            invokevirtual org.jruby.RubyHash.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            getstatic org.jruby.RubyHash.MarshalDumpVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            iload 2 /* hashSize */
            i2l
            aload 1 /* output */
            invokevirtual org.jruby.RubyHash.visitLimited:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;JLjava/lang/Object;)V
         4: .line 2240
            goto 7
      StackMap locals: org.jruby.RubyHash org.jruby.runtime.marshal.MarshalStream int
      StackMap stack: org.jruby.RubyHash$VisitorIOException
         5: astore 3 /* e */
        start local 3 // org.jruby.RubyHash$VisitorIOException e
         6: .line 2241
            aload 3 /* e */
            invokevirtual org.jruby.RubyHash$VisitorIOException.getCause:()Ljava/lang/Throwable;
            checkcast java.io.IOException
            athrow
        end local 3 // org.jruby.RubyHash$VisitorIOException e
         7: .line 2244
      StackMap locals:
      StackMap stack:
            aload 0 /* hash */
            getfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
            getstatic org.jruby.RubyHash.UNDEF:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpeq 8
            aload 1 /* output */
            aload 0 /* hash */
            getfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.runtime.marshal.MarshalStream.dumpObject:(Lorg/jruby/runtime/builtin/IRubyObject;)V
         8: .line 2245
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int hashSize
        end local 1 // org.jruby.runtime.marshal.MarshalStream output
        end local 0 // org.jruby.RubyHash hash
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      hash  Lorg/jruby/RubyHash;
            0    9     1    output  Lorg/jruby/runtime/marshal/MarshalStream;
            2    9     2  hashSize  I
            6    7     3         e  Lorg/jruby/RubyHash$VisitorIOException;
      Exception table:
        from    to  target  type
           3     4       5  Class org.jruby.RubyHash$VisitorIOException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      hash    final
      output  final

  public static org.jruby.RubyHash unmarshalFrom(org.jruby.runtime.marshal.UnmarshalStream, boolean);
    descriptor: (Lorg/jruby/runtime/marshal/UnmarshalStream;Z)Lorg/jruby/RubyHash;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.jruby.runtime.marshal.UnmarshalStream input
        start local 1 // boolean defaultValue
         0: .line 2260
            aload 0 /* input */
            invokevirtual org.jruby.runtime.marshal.UnmarshalStream.getRuntime:()Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyHash.newHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
            astore 2 /* result */
        start local 2 // org.jruby.RubyHash result
         1: .line 2261
            aload 0 /* input */
            aload 2 /* result */
            invokevirtual org.jruby.runtime.marshal.UnmarshalStream.registerLinkTarget:(Lorg/jruby/runtime/builtin/IRubyObject;)V
         2: .line 2262
            aload 0 /* input */
            invokevirtual org.jruby.runtime.marshal.UnmarshalStream.unmarshalInt:()I
            istore 3 /* size */
        start local 3 // int size
         3: .line 2263
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 7
         5: .line 2264
      StackMap locals: org.jruby.RubyHash int int
      StackMap stack:
            aload 2 /* result */
            aload 0 /* input */
            invokevirtual org.jruby.runtime.marshal.UnmarshalStream.getRuntime:()Lorg/jruby/Ruby;
            aload 0 /* input */
            invokevirtual org.jruby.runtime.marshal.UnmarshalStream.unmarshalObject:()Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* input */
            invokevirtual org.jruby.runtime.marshal.UnmarshalStream.unmarshalObject:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyHash.fastASetCheckString:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         6: .line 2263
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            iload 3 /* size */
            if_icmplt 5
        end local 4 // int i
         8: .line 2266
            iload 1 /* defaultValue */
            ifeq 9
            aload 2 /* result */
            aload 0 /* input */
            invokevirtual org.jruby.runtime.marshal.UnmarshalStream.unmarshalObject:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyHash.default_value_set:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         9: .line 2267
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 3 // int size
        end local 2 // org.jruby.RubyHash result
        end local 1 // boolean defaultValue
        end local 0 // org.jruby.runtime.marshal.UnmarshalStream input
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0         input  Lorg/jruby/runtime/marshal/UnmarshalStream;
            0   10     1  defaultValue  Z
            1   10     2        result  Lorg/jruby/RubyHash;
            3   10     3          size  I
            4    8     4             i  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      input         
      defaultValue  

  public java.lang.Class getJavaClass();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2272
            ldc Ljava/util/Map;
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;

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

  public boolean isEmpty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2284
            aload 0 /* this */
            getfield org.jruby.RubyHash.size:I
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyHash;

  public boolean containsKey(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.RubyHash this
        start local 1 // java.lang.Object key
         0: .line 2289
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            aload 1 /* key */
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObject:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyHash.internalGet:(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 // java.lang.Object key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyHash;
            0    2     1   key  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      key   

  public boolean containsValue(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // java.lang.Object value
         0: .line 2294
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            aload 1 /* value */
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObject:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyHash.hasValue:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ireturn
        end local 1 // java.lang.Object value
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/jruby/RubyHash;
            0    1     1  value  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      value  

  public java.lang.Object get(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // java.lang.Object key
         0: .line 2299
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            aload 1 /* key */
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObject:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyHash.internalGet:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 2 /* gotten */
        start local 2 // org.jruby.runtime.builtin.IRubyObject gotten
         1: .line 2300
            aload 2 /* gotten */
            ifnonnull 2
            aconst_null
            goto 3
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
         2: aload 2 /* gotten */
            ldc Ljava/lang/Object;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.toJava:(Ljava/lang/Class;)Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
         3: areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject gotten
        end local 1 // java.lang.Object key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/jruby/RubyHash;
            0    4     1     key  Ljava/lang/Object;
            1    4     2  gotten  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      key   

  public java.lang.Object put(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
         0: .line 2305
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 2306
            aload 0 /* this */
            aload 3 /* runtime */
            aload 1 /* key */
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObject:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            aload 3 /* runtime */
            aload 2 /* value */
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObject:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyHash.internalJavaPut:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 4 /* existing */
        start local 4 // org.jruby.runtime.builtin.IRubyObject existing
         2: .line 2307
            aload 4 /* existing */
            ifnonnull 3
            aconst_null
            goto 4
      StackMap locals: org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
         3: aload 4 /* existing */
            ldc Ljava/lang/Object;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.toJava:(Ljava/lang/Class;)Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
         4: areturn
        end local 4 // org.jruby.runtime.builtin.IRubyObject existing
        end local 3 // org.jruby.Ruby runtime
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/jruby/RubyHash;
            0    5     1       key  Ljava/lang/Object;
            0    5     2     value  Ljava/lang/Object;
            1    5     3   runtime  Lorg/jruby/Ruby;
            2    5     4  existing  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
       Name  Flags
      key    
      value  

  public java.lang.Object remove(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // java.lang.Object key
         0: .line 2312
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            aload 1 /* key */
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObject:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 2 /* rubyKey */
        start local 2 // org.jruby.runtime.builtin.IRubyObject rubyKey
         1: .line 2313
            aload 0 /* this */
            aload 2 /* rubyKey */
            invokevirtual org.jruby.RubyHash.internalDelete:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash$RubyHashEntry;
            getfield org.jruby.RubyHash$RubyHashEntry.value:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject rubyKey
        end local 1 // java.lang.Object key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyHash;
            0    2     1      key  Ljava/lang/Object;
            1    2     2  rubyKey  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      key   

  public void putAll(java.util.Map);
    descriptor: (Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // java.util.Map map
         0: .line 2318
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 2320
            aload 1 /* map */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3 /* iter */
        start local 3 // java.util.Iterator iter
         2: .line 2321
            goto 8
         3: .line 2322
      StackMap locals: org.jruby.Ruby java.util.Iterator
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 4 /* entry */
        start local 4 // java.util.Map$Entry entry
         4: .line 2323
            aload 0 /* this */
         5: .line 2324
            aload 2 /* runtime */
            aload 4 /* entry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObject:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
         6: .line 2325
            aload 2 /* runtime */
            aload 4 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObject:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
         7: .line 2323
            invokevirtual org.jruby.RubyHash.internalPut:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        end local 4 // java.util.Map$Entry entry
         8: .line 2321
      StackMap locals:
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         9: .line 2328
            return
        end local 3 // java.util.Iterator iter
        end local 2 // org.jruby.Ruby runtime
        end local 1 // java.util.Map map
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lorg/jruby/RubyHash;
            0   10     1      map  Ljava/util/Map;
            1   10     2  runtime  Lorg/jruby/Ruby;
            2   10     3     iter  Ljava/util/Iterator<Ljava/util/Map$Entry;>;
            4    8     4    entry  Ljava/util/Map$Entry;
    MethodParameters:
      Name  Flags
      map   

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2332
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.RubyHash.rb_clear:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyHash;
            pop
         1: .line 2333
            return
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyHash;

  public boolean equals(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.RubyHash this
        start local 1 // java.lang.Object other
         0: .line 2337
            aload 1 /* other */
            instanceof org.jruby.RubyHash
            ifne 1
            iconst_0
            ireturn
         1: .line 2338
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* other */
            if_acmpne 2
            iconst_1
            ireturn
         2: .line 2339
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 1 /* other */
            checkcast org.jruby.RubyHash
            invokevirtual org.jruby.RubyHash.op_equal:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ireturn
        end local 1 // java.lang.Object other
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/jruby/RubyHash;
            0    3     1  other  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      other  

  public java.util.Set keySet();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2344
            new org.jruby.RubyHash$BaseSet
            dup
            aload 0 /* this */
            getstatic org.jruby.RubyHash.KEY_VIEW:Lorg/jruby/RubyHash$EntryView;
            invokespecial org.jruby.RubyHash$BaseSet.<init>:(Lorg/jruby/RubyHash;Lorg/jruby/RubyHash$EntryView;)V
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;

  public java.util.Set directKeySet();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2348
            new org.jruby.RubyHash$BaseSet
            dup
            aload 0 /* this */
            getstatic org.jruby.RubyHash.DIRECT_KEY_VIEW:Lorg/jruby/RubyHash$EntryView;
            invokespecial org.jruby.RubyHash$BaseSet.<init>:(Lorg/jruby/RubyHash;Lorg/jruby/RubyHash$EntryView;)V
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;

  public java.util.Collection values();
    descriptor: ()Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2353
            new org.jruby.RubyHash$BaseCollection
            dup
            aload 0 /* this */
            getstatic org.jruby.RubyHash.VALUE_VIEW:Lorg/jruby/RubyHash$EntryView;
            invokespecial org.jruby.RubyHash$BaseCollection.<init>:(Lorg/jruby/RubyHash;Lorg/jruby/RubyHash$EntryView;)V
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;

  public java.util.Collection directValues();
    descriptor: ()Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2357
            new org.jruby.RubyHash$BaseCollection
            dup
            aload 0 /* this */
            getstatic org.jruby.RubyHash.DIRECT_VALUE_VIEW:Lorg/jruby/RubyHash$EntryView;
            invokespecial org.jruby.RubyHash$BaseCollection.<init>:(Lorg/jruby/RubyHash;Lorg/jruby/RubyHash$EntryView;)V
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;

  public java.util.Set entrySet();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2362
            new org.jruby.RubyHash$BaseSet
            dup
            aload 0 /* this */
            getstatic org.jruby.RubyHash.ENTRY_VIEW:Lorg/jruby/RubyHash$EntryView;
            invokespecial org.jruby.RubyHash$BaseSet.<init>:(Lorg/jruby/RubyHash;Lorg/jruby/RubyHash$EntryView;)V
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;

  public java.util.Set directEntrySet();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2366
            new org.jruby.RubyHash$BaseSet
            dup
            aload 0 /* this */
            getstatic org.jruby.RubyHash.DIRECT_ENTRY_VIEW:Lorg/jruby/RubyHash$EntryView;
            invokespecial org.jruby.RubyHash$BaseSet.<init>:(Lorg/jruby/RubyHash;Lorg/jruby/RubyHash$EntryView;)V
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;

  private final org.jruby.exceptions.RaiseException concurrentModification();
    descriptor: ()Lorg/jruby/exceptions/RaiseException;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2370
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
         1: .line 2371
            ldc "Detected invalid hash contents due to unsynchronized modifications with concurrent users"
         2: .line 2370
            invokevirtual org.jruby.Ruby.newConcurrencyError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/RubyHash;

  protected boolean isComparedByIdentity();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2381
            aload 0 /* this */
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.COMPARE_BY_IDENTITY_F:I
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyHash;

  public void setComparedByIdentity(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // boolean comparedByIdentity
         0: .line 2391
            iload 1 /* comparedByIdentity */
            ifeq 3
         1: .line 2392
            aload 0 /* this */
            dup
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.COMPARE_BY_IDENTITY_F:I
            ior
            putfield org.jruby.RubyHash.flags:I
         2: .line 2393
            goto 4
         3: .line 2394
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.COMPARE_BY_IDENTITY_F:I
            iconst_m1
            ixor
            iand
            putfield org.jruby.RubyHash.flags:I
         4: .line 2396
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean comparedByIdentity
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    5     0                this  Lorg/jruby/RubyHash;
            0    5     1  comparedByIdentity  Z
    MethodParameters:
                    Name  Flags
      comparedByIdentity  

  public org.jruby.runtime.builtin.IRubyObject op_aset19(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/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject key
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 2672
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.modify:()V
         1: .line 2674
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* key */
            aload 3 /* value */
            invokevirtual org.jruby.RubyHash.fastASetCheckString19:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         2: .line 2675
            aload 3 /* value */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject key
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2      key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      key      
      value    

  public org.jruby.runtime.builtin.IRubyObject aset(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=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 2683
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 1 /* key */
            aload 2 /* value */
            invokevirtual org.jruby.RubyHash.op_aset:(Lorg/jruby/runtime/ThreadContext;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 key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/jruby/RubyHash;
            0    1     1    key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2  value  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
       Name  Flags
      key    
      value  

  public org.jruby.runtime.builtin.IRubyObject aref(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
         0: .line 2691
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 1 /* key */
            invokevirtual org.jruby.RubyHash.op_aref:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;
            0    1     1   key  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      key   

  private static org.jruby.runtime.JavaSites$HashSites sites(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$HashSites;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.ThreadContext context
         0: .line 2695
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.sites:Lorg/jruby/runtime/JavaSites;
            getfield org.jruby.runtime.JavaSites.Hash:Lorg/jruby/runtime/JavaSites$HashSites;
            areturn
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
    MethodParameters:
         Name  Flags
      context  

  public final void fastASetCheckString19(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.runtime.builtin.IRubyObject key
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 2700
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* key */
            aload 3 /* value */
            invokevirtual org.jruby.RubyHash.fastASetCheckString:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         1: .line 2701
            return
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject key
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyHash;
            0    2     1  runtime  Lorg/jruby/Ruby;
            0    2     2      key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      runtime  
      key      
      value    

  public final void fastASetSmallCheckString19(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.runtime.builtin.IRubyObject key
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 2705
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* key */
            aload 3 /* value */
            invokevirtual org.jruby.RubyHash.fastASetSmallCheckString:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         1: .line 2706
            return
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject key
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyHash;
            0    2     1  runtime  Lorg/jruby/Ruby;
            0    2     2      key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      runtime  
      key      
      value    

  public org.jruby.runtime.builtin.IRubyObject op_aset(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=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 2710
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 1 /* key */
            aload 2 /* value */
            invokevirtual org.jruby.RubyHash.op_aset:(Lorg/jruby/runtime/ThreadContext;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 key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/jruby/RubyHash;
            0    1     1    key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2  value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
       Name  Flags
      key    
      value  

  public org.jruby.runtime.builtin.IRubyObject each_pair(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=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 2715
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 1
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.each_pairCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyHash;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* context */
            aload 0 /* this */
            ldc "each_pair"
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.enumSizeFn:()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;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyHash;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.RubyHash each_pairCommon(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;Z)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
        start local 3 // boolean oneNine
         0: .line 2720
            aload 0 /* this */
            aload 1 /* context */
            getstatic org.jruby.RubyHash.YieldKeyValueArrayVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 2 /* block */
            invokevirtual org.jruby.RubyHash.iteratorVisitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         1: .line 2722
            aload 0 /* this */
            areturn
        end local 3 // boolean oneNine
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyHash;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    block  Lorg/jruby/runtime/Block;
            0    2     3  oneNine  Z
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  final
      block    final
      oneNine  final

  public org.jruby.RubyHash replace19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 2727
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* other */
            invokevirtual org.jruby.RubyHash.replace:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    other  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  final
      other    

  public final void visitAll(org.jruby.RubyHash$Visitor);
    descriptor: (Lorg/jruby/RubyHash$Visitor;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.RubyHash$Visitor visitor
         0: .line 2733
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 1 /* visitor */
            ldc -1
            aconst_null
            invokevirtual org.jruby.RubyHash.visitLimited:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;JLjava/lang/Object;)V
         1: .line 2734
            return
        end local 1 // org.jruby.RubyHash$Visitor visitor
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyHash;
            0    2     1  visitor  Lorg/jruby/RubyHash$Visitor;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      visitor  

  public org.jruby.runtime.builtin.IRubyObject default_value_get(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=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 2741
            aload 2 /* args */
            arraylength
            tableswitch { // 0 - 1
                    0: 1
                    1: 2
              default: 3
          }
         1: .line 2742
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.default_value_get:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 2743
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* args */
            iconst_0
            aaload
            invokevirtual org.jruby.RubyHash.default_value_get:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 2745
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            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 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyHash;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      args     

  protected void internalPutSmall(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, boolean);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject key
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
        start local 3 // boolean checkForExisting
         0: .line 2751
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* value */
            iload 3 /* checkForExisting */
            invokevirtual org.jruby.RubyHash.internalPutNoResize:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         1: .line 2752
            return
        end local 3 // boolean checkForExisting
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.builtin.IRubyObject key
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/jruby/RubyHash;
            0    2     1               key  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     2             value  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3  checkForExisting  Z
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                  Name  Flags
      key               final
      value             final
      checkForExisting  final

  public org.jruby.RubyArray to_a();
    descriptor: ()Lorg/jruby/RubyArray;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2757
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.RubyHash.to_a:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyArray;
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public org.jruby.runtime.builtin.IRubyObject default_value_set(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject defaultValue
         0: .line 2762
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 1 /* defaultValue */
            invokevirtual org.jruby.RubyHash.default_value_set:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject defaultValue
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lorg/jruby/RubyHash;
            0    1     1  defaultValue  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
              Name  Flags
      defaultValue  final

  public org.jruby.runtime.builtin.IRubyObject default_proc();
    descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2767
            aload 0 /* this */
            getfield org.jruby.RubyHash.flags:I
            getstatic org.jruby.RubyHash.PROCDEFAULT_HASH_F:I
            iand
            ifeq 1
            aload 0 /* this */
            getfield org.jruby.RubyHash.ifNone:Lorg/jruby/runtime/builtin/IRubyObject;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public org.jruby.runtime.builtin.IRubyObject set_default_proc(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject proc
         0: .line 2772
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 1 /* proc */
            invokevirtual org.jruby.RubyHash.set_default_proc:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject proc
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;
            0    1     1  proc  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      proc  

  public org.jruby.runtime.builtin.IRubyObject set_default_proc20(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.builtin.IRubyObject proc
         0: .line 2777
            aload 0 /* this */
            aload 1 /* proc */
            invokevirtual org.jruby.RubyHash.set_default_proc:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject proc
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;
            0    1     1  proc  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      proc  

  public org.jruby.RubyFixnum rb_size();
    descriptor: ()Lorg/jruby/RubyFixnum;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2782
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.RubyHash.size:I
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public org.jruby.RubyBoolean empty_p();
    descriptor: ()Lorg/jruby/RubyBoolean;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2787
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            astore 1 /* runtime */
        start local 1 // org.jruby.Ruby runtime
         1: .line 2788
            aload 0 /* this */
            getfield org.jruby.RubyHash.size:I
            ifne 2
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getTrue:()Lorg/jruby/RubyBoolean;
            goto 3
      StackMap locals: org.jruby.Ruby
      StackMap stack:
         2: aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getFalse:()Lorg/jruby/RubyBoolean;
      StackMap locals:
      StackMap stack: org.jruby.RubyBoolean
         3: areturn
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyHash;
            1    4     1  runtime  Lorg/jruby/Ruby;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public org.jruby.RubyHash rehash();
    descriptor: ()Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2793
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.RubyHash.rehash:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyHash;
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public org.jruby.RubyHash to_hash();
    descriptor: ()Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2798
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.RubyHash.to_hash:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyHash;
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public final org.jruby.RubyArray rb_values();
    descriptor: ()Lorg/jruby/RubyArray;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2803
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.RubyHash.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.RubyHash.values:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyArray;
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public org.jruby.RubyHash rb_clear();
    descriptor: ()Lorg/jruby/RubyHash;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyHash this
         0: .line 2808
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.RubyHash.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.RubyHash.rb_clear:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyHash;
            areturn
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyHash;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  private org.jruby.runtime.builtin.IRubyObject lambda$0(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: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 903
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyHash.rb_size:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyFixnum;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyHash;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;

  private org.jruby.runtime.builtin.IRubyObject lambda$1(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: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyHash this
        start local 1 // org.jruby.runtime.ThreadContext context1
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 3 // org.jruby.runtime.Block procBlock
         0: .line 2218
            aload 1 /* context1 */
            aload 2 /* args */
            iconst_1
            iconst_1
            invokestatic org.jruby.runtime.Arity.checkArgumentCount:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;II)I
            pop
         1: .line 2219
            aload 0 /* this */
            aload 1 /* context1 */
            aload 2 /* args */
            iconst_0
            aaload
            invokevirtual org.jruby.RubyHash.op_aref:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.Block procBlock
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context1
        end local 0 // org.jruby.RubyHash this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/jruby/RubyHash;
            0    2     1   context1  Lorg/jruby/runtime/ThreadContext;
            0    2     2       args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3  procBlock  Lorg/jruby/runtime/Block;
}
SourceFile: "RubyHash.java"
NestMembers:
  org.jruby.RubyHash$1  org.jruby.RubyHash$10  org.jruby.RubyHash$11  org.jruby.RubyHash$12  org.jruby.RubyHash$13  org.jruby.RubyHash$14  org.jruby.RubyHash$15  org.jruby.RubyHash$16  org.jruby.RubyHash$17  org.jruby.RubyHash$18  org.jruby.RubyHash$19  org.jruby.RubyHash$2  org.jruby.RubyHash$20  org.jruby.RubyHash$21  org.jruby.RubyHash$22  org.jruby.RubyHash$23  org.jruby.RubyHash$24  org.jruby.RubyHash$25  org.jruby.RubyHash$26  org.jruby.RubyHash$27  org.jruby.RubyHash$28  org.jruby.RubyHash$29  org.jruby.RubyHash$3  org.jruby.RubyHash$4  org.jruby.RubyHash$5  org.jruby.RubyHash$6  org.jruby.RubyHash$7  org.jruby.RubyHash$8  org.jruby.RubyHash$9  org.jruby.RubyHash$BaseCollection  org.jruby.RubyHash$BaseIterator  org.jruby.RubyHash$BaseSet  org.jruby.RubyHash$ConvertingEntry  org.jruby.RubyHash$EntryMatchType  org.jruby.RubyHash$EntryView  org.jruby.RubyHash$Found  org.jruby.RubyHash$FoundKey  org.jruby.RubyHash$FoundPair  org.jruby.RubyHash$KeepIfVisitor  org.jruby.RubyHash$MergeVisitor  org.jruby.RubyHash$Mismatch  org.jruby.RubyHash$RejectVisitor  org.jruby.RubyHash$RubyHashEntry  org.jruby.RubyHash$SelectVisitor  org.jruby.RubyHash$TransformKeysVisitor  org.jruby.RubyHash$TransformValuesVisitor  org.jruby.RubyHash$Visitor  org.jruby.RubyHash$VisitorIOException  org.jruby.RubyHash$VisitorWithState
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Entry = java.util.Map$Entry of java.util.Map
  public abstract SizeFn = org.jruby.RubyEnumerator$SizeFn of org.jruby.RubyEnumerator
  org.jruby.RubyHash$1
  org.jruby.RubyHash$10
  org.jruby.RubyHash$11
  org.jruby.RubyHash$12
  org.jruby.RubyHash$13
  org.jruby.RubyHash$14
  org.jruby.RubyHash$15
  org.jruby.RubyHash$16
  org.jruby.RubyHash$17
  org.jruby.RubyHash$18
  org.jruby.RubyHash$19
  org.jruby.RubyHash$2
  org.jruby.RubyHash$20
  org.jruby.RubyHash$21
  org.jruby.RubyHash$22
  org.jruby.RubyHash$23
  org.jruby.RubyHash$24
  org.jruby.RubyHash$25
  org.jruby.RubyHash$26
  org.jruby.RubyHash$27
  org.jruby.RubyHash$28
  org.jruby.RubyHash$29
  org.jruby.RubyHash$3
  org.jruby.RubyHash$4
  org.jruby.RubyHash$5
  org.jruby.RubyHash$6
  org.jruby.RubyHash$7
  org.jruby.RubyHash$8
  org.jruby.RubyHash$9
  private BaseCollection = org.jruby.RubyHash$BaseCollection of org.jruby.RubyHash
  private BaseIterator = org.jruby.RubyHash$BaseIterator of org.jruby.RubyHash
  private BaseSet = org.jruby.RubyHash$BaseSet of org.jruby.RubyHash
  private ConvertingEntry = org.jruby.RubyHash$ConvertingEntry of org.jruby.RubyHash
  private abstract EntryMatchType = org.jruby.RubyHash$EntryMatchType of org.jruby.RubyHash
  private abstract EntryView = org.jruby.RubyHash$EntryView of org.jruby.RubyHash
  private Found = org.jruby.RubyHash$Found of org.jruby.RubyHash
  private FoundKey = org.jruby.RubyHash$FoundKey of org.jruby.RubyHash
  private FoundPair = org.jruby.RubyHash$FoundPair of org.jruby.RubyHash
  private KeepIfVisitor = org.jruby.RubyHash$KeepIfVisitor of org.jruby.RubyHash
  private MergeVisitor = org.jruby.RubyHash$MergeVisitor of org.jruby.RubyHash
  private Mismatch = org.jruby.RubyHash$Mismatch of org.jruby.RubyHash
  private final RejectVisitor = org.jruby.RubyHash$RejectVisitor of org.jruby.RubyHash
  public final RubyHashEntry = org.jruby.RubyHash$RubyHashEntry of org.jruby.RubyHash
  private SelectVisitor = org.jruby.RubyHash$SelectVisitor of org.jruby.RubyHash
  private TransformKeysVisitor = org.jruby.RubyHash$TransformKeysVisitor of org.jruby.RubyHash
  private TransformValuesVisitor = org.jruby.RubyHash$TransformValuesVisitor of org.jruby.RubyHash
  public abstract Visitor = org.jruby.RubyHash$Visitor of org.jruby.RubyHash
  private VisitorIOException = org.jruby.RubyHash$VisitorIOException of org.jruby.RubyHash
  public abstract VisitorWithState = org.jruby.RubyHash$VisitorWithState of org.jruby.RubyHash
  public final JavaClassKindOf = org.jruby.RubyModule$JavaClassKindOf of org.jruby.RubyModule
  public final ID = org.jruby.common.IRubyWarnings$ID of org.jruby.common.IRubyWarnings
  public final Type = org.jruby.runtime.Block$Type of org.jruby.runtime.Block
  public HashSites = org.jruby.runtime.JavaSites$HashSites of org.jruby.runtime.JavaSites
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyClass(name = {"Hash"}, include = {"Enumerable"})