public class org.jruby.RubyRange extends org.jruby.RubyObject
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.RubyRange
  super_class: org.jruby.RubyObject
{
  private org.jruby.runtime.builtin.IRubyObject begin;
    descriptor: Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0002) ACC_PRIVATE

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

  private boolean isExclusive;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean isInited;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

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

  private static final org.jruby.RubyRange$InspectRecursive INSPECT_RECURSIVE;
    descriptor: Lorg/jruby/RubyRange$InspectRecursive;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 108
            new org.jruby.RubyRange$1
            dup
            invokespecial org.jruby.RubyRange$1.<init>:()V
            putstatic org.jruby.RubyRange.RANGE_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
         1: .line 340
            new org.jruby.RubyRange$InspectRecursive
            dup
            invokespecial org.jruby.RubyRange$InspectRecursive.<init>:()V
            putstatic org.jruby.RubyRange.INSPECT_RECURSIVE:Lorg/jruby/RubyRange$InspectRecursive;
         2: .line 342
            iconst_3
            newarray 8
            dup
            iconst_0
            bipush 46
            bastore
            dup
            iconst_1
            bipush 46
            bastore
            dup
            iconst_2
            bipush 46
            bastore
            putstatic org.jruby.RubyRange.DOTDOTDOT:[B
         3: .line 897
            new org.jruby.RubyRange$2
            dup
            invokespecial org.jruby.RubyRange$2.<init>:()V
            putstatic org.jruby.RubyRange.RANGE_MARSHAL:Lorg/jruby/runtime/ObjectMarshal;
         4: .line 938
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.jruby.RubyClass createRangeClass(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 93
            aload 0 /* runtime */
            ldc "Range"
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
            getstatic org.jruby.RubyRange.RANGE_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 /* result */
        start local 1 // org.jruby.RubyClass result
         1: .line 94
            aload 0 /* runtime */
            aload 1 /* result */
            invokevirtual org.jruby.Ruby.setRange:(Lorg/jruby/RubyClass;)V
         2: .line 96
            aload 1 /* result */
            getstatic org.jruby.runtime.ClassIndex.RANGE:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.RubyClass.setClassIndex:(Lorg/jruby/runtime/ClassIndex;)V
         3: .line 97
            aload 1 /* result */
            ldc Lorg/jruby/RubyRange;
            invokevirtual org.jruby.RubyClass.setReifiedClass:(Ljava/lang/Class;)V
         4: .line 99
            aload 1 /* result */
            new org.jruby.RubyModule$JavaClassKindOf
            dup
            ldc Lorg/jruby/RubyRange;
            invokespecial org.jruby.RubyModule$JavaClassKindOf.<init>:(Ljava/lang/Class;)V
            putfield org.jruby.RubyClass.kindOf:Lorg/jruby/RubyModule$KindOf;
         5: .line 101
            aload 1 /* result */
            getstatic org.jruby.RubyRange.RANGE_MARSHAL:Lorg/jruby/runtime/ObjectMarshal;
            invokevirtual org.jruby.RubyClass.setMarshal:(Lorg/jruby/runtime/ObjectMarshal;)V
         6: .line 102
            aload 1 /* result */
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getEnumerable:()Lorg/jruby/RubyModule;
            invokevirtual org.jruby.RubyClass.includeModule:(Lorg/jruby/runtime/builtin/IRubyObject;)V
         7: .line 104
            aload 1 /* result */
            ldc Lorg/jruby/RubyRange;
            invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
         8: .line 105
            aload 1 /* result */
            areturn
        end local 1 // org.jruby.RubyClass result
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0  runtime  Lorg/jruby/Ruby;
            1    9     1   result  Lorg/jruby/RubyClass;
    MethodParameters:
         Name  Flags
      runtime  

  private void <init>(org.jruby.Ruby, org.jruby.RubyClass);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.RubyClass klass
         0: .line 116
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* klass */
            invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
         1: .line 90
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyRange.isInited:Z
         2: .line 117
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            dup_x1
            putfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            putfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 118
            return
        end local 2 // org.jruby.RubyClass klass
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyRange;
            0    4     1  runtime  Lorg/jruby/Ruby;
            0    4     2    klass  Lorg/jruby/RubyClass;
    MethodParameters:
         Name  Flags
      runtime  
      klass    

  public static org.jruby.RubyRange newRange(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyRange;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject begin
        start local 2 // org.jruby.runtime.builtin.IRubyObject end
        start local 3 // boolean isExclusive
         0: .line 121
            new org.jruby.RubyRange
            dup
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getRange:()Lorg/jruby/RubyClass;
            invokespecial org.jruby.RubyRange.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
            astore 4 /* range */
        start local 4 // org.jruby.RubyRange range
         1: .line 122
            aload 4 /* range */
            aload 0 /* context */
            aload 1 /* begin */
            aload 2 /* end */
            iload 3 /* isExclusive */
            invokevirtual org.jruby.RubyRange.init:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)V
         2: .line 123
            aload 4 /* range */
            iconst_1
            putfield org.jruby.RubyRange.isInited:Z
         3: .line 124
            aload 4 /* range */
            areturn
        end local 4 // org.jruby.RubyRange range
        end local 3 // boolean isExclusive
        end local 2 // org.jruby.runtime.builtin.IRubyObject end
        end local 1 // org.jruby.runtime.builtin.IRubyObject begin
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0      context  Lorg/jruby/runtime/ThreadContext;
            0    4     1        begin  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     2          end  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     3  isExclusive  Z
            1    4     4        range  Lorg/jruby/RubyRange;
    MethodParameters:
             Name  Flags
      context      
      begin        
      end          
      isExclusive  

  public static org.jruby.RubyRange newInclusiveRange(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/RubyRange;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject begin
        start local 2 // org.jruby.runtime.builtin.IRubyObject end
         0: .line 128
            aload 0 /* context */
            aload 1 /* begin */
            aload 2 /* end */
            iconst_0
            invokestatic org.jruby.RubyRange.newRange:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyRange;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject end
        end local 1 // org.jruby.runtime.builtin.IRubyObject begin
        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    begin  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2      end  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      begin    
      end      

  public static org.jruby.RubyRange newExclusiveRange(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/RubyRange;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject begin
        start local 2 // org.jruby.runtime.builtin.IRubyObject end
         0: .line 132
            aload 0 /* context */
            aload 1 /* begin */
            aload 2 /* end */
            iconst_1
            invokestatic org.jruby.RubyRange.newRange:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyRange;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject end
        end local 1 // org.jruby.runtime.builtin.IRubyObject begin
        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    begin  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2      end  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      begin    
      end      

  public void copySpecialInstanceVariables(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.builtin.IRubyObject clone
         0: .line 137
            aload 1 /* clone */
            checkcast org.jruby.RubyRange
            astore 2 /* range */
        start local 2 // org.jruby.RubyRange range
         1: .line 138
            aload 2 /* range */
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            putfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
         2: .line 139
            aload 2 /* range */
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            putfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 140
            aload 2 /* range */
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            putfield org.jruby.RubyRange.isExclusive:Z
         4: .line 141
            return
        end local 2 // org.jruby.RubyRange range
        end local 1 // org.jruby.runtime.builtin.IRubyObject clone
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/jruby/RubyRange;
            0    5     1  clone  Lorg/jruby/runtime/builtin/IRubyObject;
            1    5     2  range  Lorg/jruby/RubyRange;
    MethodParameters:
       Name  Flags
      clone  

  final boolean checkBegin(long);
    descriptor: (J)Z
    flags: (0x0010) ACC_FINAL
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.jruby.RubyRange this
        start local 1 // long length
         0: .line 144
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyNumeric.num2long:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            lstore 3 /* beg */
        start local 3 // long beg
         1: .line 145
            lload 3 /* beg */
            lconst_0
            lcmp
            ifge 5
         2: .line 146
            lload 3 /* beg */
            lload 1 /* length */
            ladd
            lstore 3 /* beg */
         3: .line 147
            lload 3 /* beg */
            lconst_0
            lcmp
            ifge 7
         4: .line 148
            iconst_0
            ireturn
         5: .line 150
      StackMap locals: long
      StackMap stack:
            lload 1 /* length */
            lload 3 /* beg */
            lcmp
            ifge 7
         6: .line 151
            iconst_0
            ireturn
         7: .line 153
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // long beg
        end local 1 // long length
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lorg/jruby/RubyRange;
            0    8     1  length  J
            1    8     3     beg  J
    MethodParameters:
        Name  Flags
      length  

  final long[] begLen(long, int);
    descriptor: (JI)[J
    flags: (0x0010) ACC_FINAL
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // org.jruby.RubyRange this
        start local 1 // long len
        start local 3 // int err
         0: .line 157
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyNumeric.num2long:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            lstore 4 /* beg */
        start local 4 // long beg
         1: .line 158
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyNumeric.num2long:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            lstore 6 /* end */
        start local 6 // long end
         2: .line 160
            lload 4 /* beg */
            lconst_0
            lcmp
            ifge 10
         3: .line 161
            lload 4 /* beg */
            lload 1 /* len */
            ladd
            lstore 4 /* beg */
         4: .line 162
            lload 4 /* beg */
            lconst_0
            lcmp
            ifge 10
         5: .line 163
            iload 3 /* err */
            ifeq 9
         6: .line 164
            aload 0 /* this */
            invokevirtual org.jruby.RubyRange.getRuntime:()Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            lload 4 /* beg */
            invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifeq 7
            ldc "."
            goto 8
      StackMap locals: org.jruby.RubyRange long int long long
      StackMap stack: org.jruby.Ruby java.lang.StringBuilder
         7: ldc ""
      StackMap locals: org.jruby.RubyRange long int long long
      StackMap stack: org.jruby.Ruby java.lang.StringBuilder java.lang.String
         8: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            lload 6 /* end */
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " out of range"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         9: .line 166
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        10: .line 170
      StackMap locals:
      StackMap stack:
            iload 3 /* err */
            ifeq 11
            iload 3 /* err */
            iconst_2
            if_icmpne 19
        11: .line 171
      StackMap locals:
      StackMap stack:
            lload 4 /* beg */
            lload 1 /* len */
            lcmp
            ifle 17
        12: .line 172
            iload 3 /* err */
            ifeq 16
        13: .line 173
            aload 0 /* this */
            invokevirtual org.jruby.RubyRange.getRuntime:()Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            lload 4 /* beg */
            invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifeq 14
            ldc "."
            goto 15
      StackMap locals: org.jruby.RubyRange long int long long
      StackMap stack: org.jruby.Ruby java.lang.StringBuilder
        14: ldc ""
      StackMap locals: org.jruby.RubyRange long int long long
      StackMap stack: org.jruby.Ruby java.lang.StringBuilder java.lang.String
        15: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            lload 6 /* end */
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " out of range"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        16: .line 175
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        17: .line 177
      StackMap locals:
      StackMap stack:
            lload 6 /* end */
            lload 1 /* len */
            lcmp
            ifle 19
        18: .line 178
            lload 1 /* len */
            lstore 6 /* end */
        19: .line 182
      StackMap locals:
      StackMap stack:
            lload 6 /* end */
            lconst_0
            lcmp
            ifge 21
        20: .line 183
            lload 6 /* end */
            lload 1 /* len */
            ladd
            lstore 6 /* end */
        21: .line 185
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifne 23
        22: .line 186
            lload 6 /* end */
            lconst_1
            ladd
            lstore 6 /* end */
        23: .line 188
      StackMap locals:
      StackMap stack:
            lload 6 /* end */
            lload 4 /* beg */
            lsub
            lstore 1 /* len */
        24: .line 189
            lload 1 /* len */
            lconst_0
            lcmp
            ifge 26
        25: .line 190
            lconst_0
            lstore 1 /* len */
        26: .line 193
      StackMap locals:
      StackMap stack:
            iconst_2
            newarray 11
            dup
            iconst_0
            lload 4 /* beg */
            lastore
            dup
            iconst_1
            lload 1 /* len */
            lastore
            areturn
        end local 6 // long end
        end local 4 // long beg
        end local 3 // int err
        end local 1 // long len
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   27     0  this  Lorg/jruby/RubyRange;
            0   27     1   len  J
            0   27     3   err  I
            1   27     4   beg  J
            2   27     6   end  J
    MethodParameters:
      Name  Flags
      len   
      err   

  final long begLen0(long);
    descriptor: (J)J
    flags: (0x0010) ACC_FINAL
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // org.jruby.RubyRange this
        start local 1 // long len
         0: .line 197
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyNumeric.num2long:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            lstore 3 /* beg */
        start local 3 // long beg
         1: .line 199
            lload 3 /* beg */
            lconst_0
            lcmp
            ifge 7
         2: .line 200
            lload 3 /* beg */
            lload 1 /* len */
            ladd
            lstore 3 /* beg */
         3: .line 201
            lload 3 /* beg */
            lconst_0
            lcmp
            ifge 7
         4: .line 202
            aload 0 /* this */
            invokevirtual org.jruby.RubyRange.getRuntime:()Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            lload 3 /* beg */
            invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifeq 5
            ldc "."
            goto 6
      StackMap locals: org.jruby.RubyRange long long
      StackMap stack: org.jruby.Ruby java.lang.StringBuilder
         5: ldc ""
      StackMap locals: org.jruby.RubyRange long long
      StackMap stack: org.jruby.Ruby java.lang.StringBuilder java.lang.String
         6: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " out of range"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         7: .line 206
      StackMap locals:
      StackMap stack:
            lload 3 /* beg */
            lreturn
        end local 3 // long beg
        end local 1 // long len
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/jruby/RubyRange;
            0    8     1   len  J
            1    8     3   beg  J
    MethodParameters:
      Name  Flags
      len   

  final long begLen1(long, int);
    descriptor: (JI)J
    flags: (0x0010) ACC_FINAL
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.jruby.RubyRange this
        start local 1 // long len
        start local 3 // int beg
         0: .line 210
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyNumeric.num2long:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            lstore 4 /* end */
        start local 4 // long end
         1: .line 212
            lload 4 /* end */
            lconst_0
            lcmp
            ifge 3
         2: .line 213
            lload 4 /* end */
            lload 1 /* len */
            ladd
            lstore 4 /* end */
         3: .line 215
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifne 5
         4: .line 216
            lload 4 /* end */
            lconst_1
            ladd
            lstore 4 /* end */
         5: .line 218
      StackMap locals:
      StackMap stack:
            lload 4 /* end */
            iload 3 /* beg */
            i2l
            lsub
            lstore 1 /* len */
         6: .line 219
            lload 1 /* len */
            lconst_0
            lcmp
            ifge 8
         7: .line 220
            lconst_0
            lstore 1 /* len */
         8: .line 223
      StackMap locals:
      StackMap stack:
            lload 1 /* len */
            lreturn
        end local 4 // long end
        end local 3 // int beg
        end local 1 // long len
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/jruby/RubyRange;
            0    9     1   len  J
            0    9     3   beg  I
            1    9     4   end  J
    MethodParameters:
      Name  Flags
      len   
      beg   

  final int[] begLenInt(int, int);
    descriptor: (II)[I
    flags: (0x0010) ACC_FINAL
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.jruby.RubyRange this
        start local 1 // int len
        start local 2 // int err
         0: .line 227
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyNumeric.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            istore 3 /* beg */
        start local 3 // int beg
         1: .line 228
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyNumeric.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            istore 4 /* end */
        start local 4 // int end
         2: .line 230
            iload 3 /* beg */
            ifge 10
         3: .line 231
            iload 3 /* beg */
            iload 1 /* len */
            iadd
            istore 3 /* beg */
         4: .line 232
            iload 3 /* beg */
            ifge 10
         5: .line 233
            iload 2 /* err */
            ifeq 9
         6: .line 234
            aload 0 /* this */
            invokevirtual org.jruby.RubyRange.getRuntime:()Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            iload 3 /* beg */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifeq 7
            ldc "."
            goto 8
      StackMap locals: org.jruby.RubyRange int int int int
      StackMap stack: org.jruby.Ruby java.lang.StringBuilder
         7: ldc ""
      StackMap locals: org.jruby.RubyRange int int int int
      StackMap stack: org.jruby.Ruby java.lang.StringBuilder java.lang.String
         8: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 4 /* end */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " out of range"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         9: .line 236
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        10: .line 240
      StackMap locals:
      StackMap stack:
            iload 2 /* err */
            ifeq 11
            iload 2 /* err */
            iconst_2
            if_icmpne 19
        11: .line 241
      StackMap locals:
      StackMap stack:
            iload 3 /* beg */
            iload 1 /* len */
            if_icmple 17
        12: .line 242
            iload 2 /* err */
            ifeq 16
        13: .line 243
            aload 0 /* this */
            invokevirtual org.jruby.RubyRange.getRuntime:()Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            iload 3 /* beg */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifeq 14
            ldc "."
            goto 15
      StackMap locals: org.jruby.RubyRange int int int int
      StackMap stack: org.jruby.Ruby java.lang.StringBuilder
        14: ldc ""
      StackMap locals: org.jruby.RubyRange int int int int
      StackMap stack: org.jruby.Ruby java.lang.StringBuilder java.lang.String
        15: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 4 /* end */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " out of range"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        16: .line 245
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        17: .line 247
      StackMap locals:
      StackMap stack:
            iload 4 /* end */
            iload 1 /* len */
            if_icmple 19
        18: .line 248
            iload 1 /* len */
            istore 4 /* end */
        19: .line 252
      StackMap locals:
      StackMap stack:
            iload 4 /* end */
            ifge 21
        20: .line 253
            iload 4 /* end */
            iload 1 /* len */
            iadd
            istore 4 /* end */
        21: .line 255
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifne 23
        22: .line 256
            iinc 4 /* end */ 1
        23: .line 258
      StackMap locals:
      StackMap stack:
            iload 4 /* end */
            iload 3 /* beg */
            isub
            istore 1 /* len */
        24: .line 259
            iload 1 /* len */
            ifge 26
        25: .line 260
            iconst_0
            istore 1 /* len */
        26: .line 263
      StackMap locals:
      StackMap stack:
            iconst_2
            newarray 10
            dup
            iconst_0
            iload 3 /* beg */
            iastore
            dup
            iconst_1
            iload 1 /* len */
            iastore
            areturn
        end local 4 // int end
        end local 3 // int beg
        end local 2 // int err
        end local 1 // int len
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   27     0  this  Lorg/jruby/RubyRange;
            0   27     1   len  I
            0   27     2   err  I
            1   27     3   beg  I
            2   27     4   end  I
    MethodParameters:
      Name  Flags
      len   
      err   final

  private void init(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject begin
        start local 3 // org.jruby.runtime.builtin.IRubyObject end
        start local 4 // boolean isExclusive
         0: .line 267
            aload 2 /* begin */
            instanceof org.jruby.RubyFixnum
            ifeq 1
            aload 3 /* end */
            instanceof org.jruby.RubyFixnum
            ifne 4
         1: .line 268
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 2 /* begin */
            getstatic org.jruby.runtime.invokedynamic.MethodNames.OP_CMP:Lorg/jruby/runtime/invokedynamic/MethodNames;
            aload 3 /* end */
            invokestatic org.jruby.runtime.Helpers.invokedynamic:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 5 /* result */
        start local 5 // org.jruby.runtime.builtin.IRubyObject result
         2: .line 269
            aload 5 /* result */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 4
         3: .line 270
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "bad value for range"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 5 // org.jruby.runtime.builtin.IRubyObject result
         4: .line 274
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* begin */
            putfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
         5: .line 275
            aload 0 /* this */
            aload 3 /* end */
            putfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
         6: .line 276
            aload 0 /* this */
            iload 4 /* isExclusive */
            putfield org.jruby.RubyRange.isExclusive:Z
         7: .line 277
            return
        end local 4 // boolean isExclusive
        end local 3 // org.jruby.runtime.builtin.IRubyObject end
        end local 2 // org.jruby.runtime.builtin.IRubyObject begin
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lorg/jruby/RubyRange;
            0    8     1      context  Lorg/jruby/runtime/ThreadContext;
            0    8     2        begin  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     3          end  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     4  isExclusive  Z
            2    4     5       result  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
             Name  Flags
      context      
      begin        
      end          
      isExclusive  

  public org.jruby.runtime.builtin.IRubyObject initialize(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.jruby.RubyRange 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 unusedBlock
         0: .line 281
            aload 0 /* this */
            getfield org.jruby.RubyRange.isInited:Z
            ifeq 2
         1: .line 282
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "`initialize' called twice"
            ldc "initialize"
            invokevirtual org.jruby.Ruby.newNameError:(Ljava/lang/String;Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         2: .line 284
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.RubyRange.checkFrozen:()V
         3: .line 285
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* args */
            iconst_0
            aaload
            aload 2 /* args */
            iconst_1
            aaload
            aload 2 /* args */
            arraylength
            iconst_2
            if_icmple 4
            aload 2 /* args */
            iconst_2
            aaload
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 4
            iconst_1
            goto 5
      StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject[] org.jruby.runtime.Block
      StackMap stack: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject
         4: iconst_0
      StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject[] org.jruby.runtime.Block
      StackMap stack: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject int
         5: invokevirtual org.jruby.RubyRange.init:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)V
         6: .line 286
            aload 0 /* this */
            iconst_1
            putfield org.jruby.RubyRange.isInited:Z
         7: .line 287
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.Block unusedBlock
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lorg/jruby/RubyRange;
            0    8     1      context  Lorg/jruby/runtime/ThreadContext;
            0    8     2         args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     3  unusedBlock  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(required = 2, optional = 1, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
    MethodParameters:
             Name  Flags
      context      
      args         
      unusedBlock  

  public org.jruby.runtime.builtin.IRubyObject initialize_copy(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.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject original
         0: .line 292
            aload 0 /* this */
            getfield org.jruby.RubyRange.isInited:Z
            ifeq 2
         1: .line 293
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "`initialize' called twice"
            ldc "initialize"
            invokevirtual org.jruby.Ruby.newNameError:(Ljava/lang/String;Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         2: .line 296
      StackMap locals:
      StackMap stack:
            aload 2 /* original */
            checkcast org.jruby.RubyRange
            astore 3 /* other */
        start local 3 // org.jruby.RubyRange other
         3: .line 297
            aload 0 /* this */
            aload 1 /* context */
            aload 3 /* other */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 3 /* other */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 3 /* other */
            getfield org.jruby.RubyRange.isExclusive:Z
            invokevirtual org.jruby.RubyRange.init:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)V
         4: .line 298
            aload 0 /* this */
            iconst_1
            putfield org.jruby.RubyRange.isInited:Z
         5: .line 299
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.RubyRange other
        end local 2 // org.jruby.runtime.builtin.IRubyObject original
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/jruby/RubyRange;
            0    6     1   context  Lorg/jruby/runtime/ThreadContext;
            0    6     2  original  Lorg/jruby/runtime/builtin/IRubyObject;
            3    6     3     other  Lorg/jruby/RubyRange;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(required = 1, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
    MethodParameters:
          Name  Flags
      context   
      original  

  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.RubyRange this
         0: .line 304
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.RubyRange.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.RubyRange.hash:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyFixnum;
            areturn
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyRange;

  public org.jruby.RubyFixnum hash(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyFixnum;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 309
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 311
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifeq 2
            iconst_1
            goto 3
      StackMap locals: org.jruby.Ruby
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 3 /* exclusiveBit */
        start local 3 // int exclusiveBit
         4: .line 312
            iload 3 /* exclusiveBit */
            i2l
            lstore 4 /* hash */
        start local 4 // long hash
         5: .line 315
            aload 2 /* runtime */
            lload 4 /* hash */
            invokestatic org.jruby.runtime.Helpers.hashStart:(Lorg/jruby/Ruby;J)J
            lstore 4 /* hash */
         6: .line 316
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.runtime.Helpers.safeHash:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyFixnum;
            astore 6 /* v */
        start local 6 // org.jruby.runtime.builtin.IRubyObject v
         7: .line 317
            lload 4 /* hash */
            aload 6 /* v */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToInteger:()Lorg/jruby/RubyInteger;
            invokevirtual org.jruby.RubyInteger.getLongValue:()J
            invokestatic org.jruby.runtime.Helpers.murmurCombine:(JJ)J
            lstore 4 /* hash */
         8: .line 318
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.runtime.Helpers.safeHash:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyFixnum;
            astore 6 /* v */
         9: .line 319
            lload 4 /* hash */
            aload 6 /* v */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToInteger:()Lorg/jruby/RubyInteger;
            invokevirtual org.jruby.RubyInteger.getLongValue:()J
            invokestatic org.jruby.runtime.Helpers.murmurCombine:(JJ)J
            lstore 4 /* hash */
        10: .line 320
            lload 4 /* hash */
            iload 3 /* exclusiveBit */
            bipush 24
            ishl
            i2l
            invokestatic org.jruby.runtime.Helpers.murmurCombine:(JJ)J
            lstore 4 /* hash */
        11: .line 321
            lload 4 /* hash */
            invokestatic org.jruby.runtime.Helpers.hashEnd:(J)J
            lstore 4 /* hash */
        12: .line 323
            aload 2 /* runtime */
            lload 4 /* hash */
            invokevirtual org.jruby.Ruby.newFixnum:(J)Lorg/jruby/RubyFixnum;
            areturn
        end local 6 // org.jruby.runtime.builtin.IRubyObject v
        end local 4 // long hash
        end local 3 // int exclusiveBit
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   13     0          this  Lorg/jruby/RubyRange;
            0   13     1       context  Lorg/jruby/runtime/ThreadContext;
            1   13     2       runtime  Lorg/jruby/Ruby;
            4   13     3  exclusiveBit  I
            5   13     4          hash  J
            7   13     6             v  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"hash"})
    MethodParameters:
         Name  Flags
      context  

  private static org.jruby.RubyString inspectValue(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 327
            aload 0 /* context */
            getstatic org.jruby.RubyRange.INSPECT_RECURSIVE:Lorg/jruby/RubyRange$InspectRecursive;
            aload 1 /* value */
            aload 1 /* value */
            ldc "inspect"
            iconst_1
            invokevirtual org.jruby.runtime.ThreadContext.safeRecurse:(Lorg/jruby/runtime/ThreadContext$RecursiveFunctionEx;Ljava/lang/Object;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyString
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject value
        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    value  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  final
      value    

  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.RubyRange this
         0: .line 346
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.RubyRange.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.RubyRange.inspect:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyString;
            areturn
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyRange;

  public org.jruby.RubyString inspect(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyString;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 351
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyRange.inspectValue:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.RubyString.strDup:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
            astore 2 /* i1 */
        start local 2 // org.jruby.RubyString i1
         1: .line 352
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyRange.inspectValue:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            astore 3 /* i2 */
        start local 3 // org.jruby.RubyString i2
         2: .line 353
            aload 2 /* i1 */
            getstatic org.jruby.RubyRange.DOTDOTDOT:[B
            iconst_0
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifeq 3
            iconst_3
            goto 4
      StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.RubyString org.jruby.RubyString
      StackMap stack: org.jruby.RubyString byte[] int
         3: iconst_2
      StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.RubyString org.jruby.RubyString
      StackMap stack: org.jruby.RubyString byte[] int int
         4: invokevirtual org.jruby.RubyString.cat:([BII)Lorg/jruby/RubyString;
            pop
         5: .line 354
            aload 2 /* i1 */
            aload 3 /* i2 */
            invokevirtual org.jruby.RubyString.append:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
            pop
         6: .line 355
            aload 2 /* i1 */
            aload 3 /* i2 */
            invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
            pop
         7: .line 356
            aload 2 /* i1 */
            aload 0 /* this */
            invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
            pop
         8: .line 357
            aload 2 /* i1 */
            areturn
        end local 3 // org.jruby.RubyString i2
        end local 2 // org.jruby.RubyString i1
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/jruby/RubyRange;
            0    9     1  context  Lorg/jruby/runtime/ThreadContext;
            1    9     2       i1  Lorg/jruby/RubyString;
            2    9     3       i2  Lorg/jruby/RubyString;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"inspect"})
    MethodParameters:
         Name  Flags
      context  final

  public org.jruby.runtime.builtin.IRubyObject to_s();
    descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyRange this
         0: .line 362
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.RubyRange.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.RubyRange.to_s:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
            areturn
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyRange;

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

  private org.jruby.RubyString to_s(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.Ruby runtime
         0: .line 371
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.asString:()Lorg/jruby/RubyString;
            aload 1 /* runtime */
            invokevirtual org.jruby.RubyString.strDup:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
            astore 2 /* i1 */
        start local 2 // org.jruby.RubyString i1
         1: .line 372
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.asString:()Lorg/jruby/RubyString;
            astore 3 /* i2 */
        start local 3 // org.jruby.RubyString i2
         2: .line 373
            aload 2 /* i1 */
            getstatic org.jruby.RubyRange.DOTDOTDOT:[B
            iconst_0
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifeq 3
            iconst_3
            goto 4
      StackMap locals: org.jruby.RubyRange org.jruby.Ruby org.jruby.RubyString org.jruby.RubyString
      StackMap stack: org.jruby.RubyString byte[] int
         3: iconst_2
      StackMap locals: org.jruby.RubyRange org.jruby.Ruby org.jruby.RubyString org.jruby.RubyString
      StackMap stack: org.jruby.RubyString byte[] int int
         4: invokevirtual org.jruby.RubyString.cat:([BII)Lorg/jruby/RubyString;
            pop
         5: .line 374
            aload 2 /* i1 */
            aload 3 /* i2 */
            invokevirtual org.jruby.RubyString.append:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
            pop
         6: .line 375
            aload 2 /* i1 */
            aload 3 /* i2 */
            invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
            pop
         7: .line 376
            aload 2 /* i1 */
            aload 0 /* this */
            invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
            pop
         8: .line 377
            aload 2 /* i1 */
            areturn
        end local 3 // org.jruby.RubyString i2
        end local 2 // org.jruby.RubyString i1
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/jruby/RubyRange;
            0    9     1  runtime  Lorg/jruby/Ruby;
            1    9     2       i1  Lorg/jruby/RubyString;
            2    9     3       i2  Lorg/jruby/RubyString;
    MethodParameters:
         Name  Flags
      runtime  final

  public org.jruby.RubyBoolean exclude_end_p();
    descriptor: ()Lorg/jruby/RubyBoolean;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyRange this
         0: .line 382
            aload 0 /* this */
            invokevirtual org.jruby.RubyRange.getRuntime:()Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyRange;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"exclude_end?"})

  public org.jruby.runtime.builtin.IRubyObject eql_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 387
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* other */
            getstatic org.jruby.runtime.invokedynamic.MethodNames.EQL:Lorg/jruby/runtime/invokedynamic/MethodNames;
            invokevirtual org.jruby.RubyRange.equalityInner:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;)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.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRange;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    other  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"eql?"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      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.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 392
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* other */
            getstatic org.jruby.runtime.invokedynamic.MethodNames.OP_EQUAL:Lorg/jruby/runtime/invokedynamic/MethodNames;
            invokevirtual org.jruby.RubyRange.equalityInner:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;)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.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRange;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    other  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"=="}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      other    

  private org.jruby.runtime.builtin.IRubyObject equalityInner(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.invokedynamic.MethodNames);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
        start local 3 // org.jruby.runtime.invokedynamic.MethodNames equalityCheck
         0: .line 396
            aload 0 /* this */
            aload 2 /* other */
            if_acmpne 1
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
            areturn
         1: .line 397
      StackMap locals:
      StackMap stack:
            aload 2 /* other */
            instanceof org.jruby.RubyRange
            ifne 2
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
         2: .line 399
      StackMap locals:
      StackMap stack:
            aload 2 /* other */
            checkcast org.jruby.RubyRange
            astore 4 /* otherRange */
        start local 4 // org.jruby.RubyRange otherRange
         3: .line 401
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            aload 4 /* otherRange */
            getfield org.jruby.RubyRange.isExclusive:Z
            if_icmpne 6
         4: .line 402
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 3 /* equalityCheck */
            aload 4 /* otherRange */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.runtime.Helpers.invokedynamic:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 6
         5: .line 403
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 3 /* equalityCheck */
            aload 4 /* otherRange */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.runtime.Helpers.invokedynamic:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 6
            iconst_1
            goto 7
      StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.invokedynamic.MethodNames org.jruby.RubyRange
      StackMap stack: org.jruby.Ruby
         6: iconst_0
         7: .line 401
      StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.invokedynamic.MethodNames org.jruby.RubyRange
      StackMap stack: org.jruby.Ruby int
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 4 // org.jruby.RubyRange otherRange
        end local 3 // org.jruby.runtime.invokedynamic.MethodNames equalityCheck
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    8     0           this  Lorg/jruby/RubyRange;
            0    8     1        context  Lorg/jruby/runtime/ThreadContext;
            0    8     2          other  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     3  equalityCheck  Lorg/jruby/runtime/invokedynamic/MethodNames;
            3    8     4     otherRange  Lorg/jruby/RubyRange;
    MethodParameters:
               Name  Flags
      context        
      other          
      equalityCheck  

  private static org.jruby.runtime.builtin.IRubyObject rangeLt(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: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject a
        start local 2 // org.jruby.runtime.builtin.IRubyObject b
         0: .line 451
            aload 0 /* context */
            aload 1 /* a */
            getstatic org.jruby.runtime.invokedynamic.MethodNames.OP_CMP:Lorg/jruby/runtime/invokedynamic/MethodNames;
            aload 2 /* b */
            invokestatic org.jruby.runtime.Helpers.invokedynamic:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* result */
        start local 3 // org.jruby.runtime.builtin.IRubyObject result
         1: .line 452
            aload 3 /* result */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 3
         2: .line 453
            aconst_null
            areturn
         3: .line 455
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 0 /* context */
            aload 3 /* result */
            aload 1 /* a */
            aload 2 /* b */
            invokestatic org.jruby.RubyComparable.cmpint:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)I
            ifge 4
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
            goto 5
      StackMap locals:
      StackMap stack:
         4: aconst_null
      StackMap locals:
      StackMap stack: org.jruby.RubyBoolean
         5: areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject result
        end local 2 // org.jruby.runtime.builtin.IRubyObject b
        end local 1 // org.jruby.runtime.builtin.IRubyObject a
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0  context  Lorg/jruby/runtime/ThreadContext;
            0    6     1        a  Lorg/jruby/runtime/builtin/IRubyObject;
            0    6     2        b  Lorg/jruby/runtime/builtin/IRubyObject;
            1    6     3   result  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      a        
      b        

  private static org.jruby.runtime.builtin.IRubyObject rangeLe(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: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject a
        start local 2 // org.jruby.runtime.builtin.IRubyObject b
         0: .line 459
            aload 0 /* context */
            aload 1 /* a */
            getstatic org.jruby.runtime.invokedynamic.MethodNames.OP_CMP:Lorg/jruby/runtime/invokedynamic/MethodNames;
            aload 2 /* b */
            invokestatic org.jruby.runtime.Helpers.invokedynamic:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* result */
        start local 3 // org.jruby.runtime.builtin.IRubyObject result
         1: .line 460
            aload 3 /* result */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 3
         2: .line 461
            aconst_null
            areturn
         3: .line 463
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 0 /* context */
            aload 3 /* result */
            aload 1 /* a */
            aload 2 /* b */
            invokestatic org.jruby.RubyComparable.cmpint:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)I
            istore 4 /* c */
        start local 4 // int c
         4: .line 464
            iload 4 /* c */
            ifne 6
         5: .line 465
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            areturn
         6: .line 467
      StackMap locals: int
      StackMap stack:
            iload 4 /* c */
            ifge 7
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
            goto 8
      StackMap locals:
      StackMap stack:
         7: aconst_null
      StackMap locals:
      StackMap stack: org.jruby.RubyBoolean
         8: areturn
        end local 4 // int c
        end local 3 // org.jruby.runtime.builtin.IRubyObject result
        end local 2 // org.jruby.runtime.builtin.IRubyObject b
        end local 1 // org.jruby.runtime.builtin.IRubyObject a
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0  context  Lorg/jruby/runtime/ThreadContext;
            0    9     1        a  Lorg/jruby/runtime/builtin/IRubyObject;
            0    9     2        b  Lorg/jruby/runtime/builtin/IRubyObject;
            1    9     3   result  Lorg/jruby/runtime/builtin/IRubyObject;
            4    9     4        c  I
    MethodParameters:
         Name  Flags
      context  
      a        
      b        

  private void rangeEach(org.jruby.runtime.ThreadContext, org.jruby.RubyRange$RangeCallBack);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyRange$RangeCallBack;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.RubyRange$RangeCallBack callback
         0: .line 471
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* v */
        start local 3 // org.jruby.runtime.builtin.IRubyObject v
         1: .line 472
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifeq 11
         2: .line 473
            goto 5
         3: .line 474
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 2 /* callback */
            aload 1 /* context */
            aload 3 /* v */
            invokevirtual org.jruby.RubyRange$RangeCallBack.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)V
         4: .line 475
            aload 3 /* v */
            aload 1 /* context */
            ldc "succ"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* v */
         5: .line 473
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 3 /* v */
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyRange.rangeLt:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            ifnonnull 3
         6: .line 477
            goto 13
        start local 4 // org.jruby.runtime.builtin.IRubyObject c
         7: .line 480
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 2 /* callback */
            aload 1 /* context */
            aload 3 /* v */
            invokevirtual org.jruby.RubyRange$RangeCallBack.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)V
         8: .line 481
            aload 4 /* c */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            if_acmpne 10
         9: .line 482
            goto 13
        10: .line 484
      StackMap locals:
      StackMap stack:
            aload 3 /* v */
            aload 1 /* context */
            ldc "succ"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* v */
        end local 4 // org.jruby.runtime.builtin.IRubyObject c
        11: .line 479
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 3 /* v */
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyRange.rangeLe:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            dup
            astore 4 /* c */
        start local 4 // org.jruby.runtime.builtin.IRubyObject c
        12: ifnull 13
            aload 4 /* c */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifne 7
        end local 4 // org.jruby.runtime.builtin.IRubyObject c
        13: .line 487
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.jruby.runtime.builtin.IRubyObject v
        end local 2 // org.jruby.RubyRange$RangeCallBack callback
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   14     0      this  Lorg/jruby/RubyRange;
            0   14     1   context  Lorg/jruby/runtime/ThreadContext;
            0   14     2  callback  Lorg/jruby/RubyRange$RangeCallBack;
            1   14     3         v  Lorg/jruby/runtime/builtin/IRubyObject;
            7   11     4         c  Lorg/jruby/runtime/builtin/IRubyObject;
           12   13     4         c  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
          Name  Flags
      context   
      callback  

  public org.jruby.runtime.builtin.IRubyObject to_a(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=7, locals=12, args_size=3
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 491
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 493
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyFixnum
            ifeq 18
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyFixnum
            ifeq 18
         2: .line 494
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyFixnum
            invokevirtual org.jruby.RubyFixnum.getLongValue:()J
            lstore 4 /* lim */
        start local 4 // long lim
         3: .line 495
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifne 5
         4: .line 496
            lload 4 /* lim */
            lconst_1
            ladd
            lstore 4 /* lim */
         5: .line 499
      StackMap locals: org.jruby.Ruby long
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyFixnum
            invokevirtual org.jruby.RubyFixnum.getLongValue:()J
            lstore 6 /* base */
        start local 6 // long base
         6: .line 500
            lload 4 /* lim */
            lload 6 /* base */
            lsub
            lstore 8 /* size */
        start local 8 // long size
         7: .line 501
            lload 8 /* size */
            ldc 2147483647
            lcmp
            ifle 9
         8: .line 502
            aload 3 /* runtime */
            ldc "Range size too large for to_a"
            invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         9: .line 504
      StackMap locals: long long
      StackMap stack:
            lload 8 /* size */
            lconst_0
            lcmp
            ifge 11
        10: .line 505
            aload 3 /* runtime */
            invokestatic org.jruby.RubyArray.newEmptyArray:(Lorg/jruby/Ruby;)Lorg/jruby/RubyArray;
            areturn
        11: .line 507
      StackMap locals:
      StackMap stack:
            lload 8 /* size */
            l2i
            anewarray org.jruby.runtime.builtin.IRubyObject
            astore 10 /* array */
        start local 10 // org.jruby.runtime.builtin.IRubyObject[] array
        12: .line 508
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        13: goto 16
        14: .line 509
      StackMap locals: org.jruby.runtime.builtin.IRubyObject[] int
      StackMap stack:
            aload 10 /* array */
            iload 11 /* i */
            aload 3 /* runtime */
            lload 6 /* base */
            iload 11 /* i */
            i2l
            ladd
            invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
            aastore
        15: .line 508
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 11 /* i */
            i2l
            lload 8 /* size */
            lcmp
            iflt 14
        end local 11 // int i
        17: .line 511
            aload 3 /* runtime */
            aload 10 /* array */
            invokestatic org.jruby.RubyArray.newArrayMayCopy:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
        end local 10 // org.jruby.runtime.builtin.IRubyObject[] array
        end local 8 // long size
        end local 6 // long base
        end local 4 // long lim
        18: .line 513
      StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.Block org.jruby.Ruby
      StackMap stack:
            aload 1 /* context */
            aload 0 /* this */
            invokestatic org.jruby.RubyEnumerable.to_a:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        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.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   19     0     this  Lorg/jruby/RubyRange;
            0   19     1  context  Lorg/jruby/runtime/ThreadContext;
            0   19     2    block  Lorg/jruby/runtime/Block;
            1   19     3  runtime  Lorg/jruby/Ruby;
            3   18     4      lim  J
            6   18     6     base  J
            7   18     8     size  J
           12   18    10    array  [Lorg/jruby/runtime/builtin/IRubyObject;
           13   17    11        i  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  
      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.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 519
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyRange.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.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRange;
            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    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=6, locals=4, args_size=3
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 524
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 2
         1: .line 525
            aload 1 /* context */
            aload 0 /* this */
            ldc "each"
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyRange.enumSizeFn:(Lorg/jruby/runtime/ThreadContext;)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 527
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyFixnum
            ifeq 5
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyFixnum
            ifeq 5
         3: .line 528
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyRange.fixnumEach:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)V
         4: .line 529
            goto 15
      StackMap locals:
      StackMap stack:
         5: aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubySymbol
            ifeq 8
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubySymbol
            ifeq 8
         6: .line 530
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubySymbol
            invokevirtual org.jruby.RubySymbol.asString:()Lorg/jruby/RubyString;
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubySymbol
            invokevirtual org.jruby.RubySymbol.asString:()Lorg/jruby/RubyString;
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            aload 2 /* block */
            iconst_1
            invokevirtual org.jruby.RubyString.uptoCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;ZLorg/jruby/runtime/Block;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         7: .line 531
            goto 15
         8: .line 532
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.checkStringType:()Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* tmp */
        start local 3 // org.jruby.runtime.builtin.IRubyObject tmp
         9: .line 533
            aload 3 /* tmp */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 12
        10: .line 534
            aload 3 /* tmp */
            checkcast org.jruby.RubyString
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            aload 2 /* block */
            invokevirtual org.jruby.RubyString.uptoCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;ZLorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        11: .line 535
            goto 15
        12: .line 536
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyRange.discreteObject:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifne 14
        13: .line 537
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            ldc "can't iterate from "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.getName:()Ljava/lang/String;
            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
        14: .line 539
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            new org.jruby.RubyRange$3
            dup
            aload 0 /* this */
            aload 2 /* block */
            invokespecial org.jruby.RubyRange$3.<init>:(Lorg/jruby/RubyRange;Lorg/jruby/runtime/Block;)V
            invokevirtual org.jruby.RubyRange.rangeEach:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyRange$RangeCallBack;)V
        end local 3 // org.jruby.runtime.builtin.IRubyObject tmp
        15: .line 547
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   16     0     this  Lorg/jruby/RubyRange;
            0   16     1  context  Lorg/jruby/runtime/ThreadContext;
            0   16     2    block  Lorg/jruby/runtime/Block;
            9   15     3      tmp  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"each"})
    MethodParameters:
         Name  Flags
      context  final
      block    final

  private void fixnumEach(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 552
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyFixnum
            getfield org.jruby.RubyFixnum.value:J
            lstore 3 /* to */
        start local 3 // long to
         1: .line 553
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifeq 5
         2: .line 554
            lload 3 /* to */
            ldc -9223372036854775808
            lcmp
            ifne 4
         3: .line 555
            return
         4: .line 557
      StackMap locals: long
      StackMap stack:
            lload 3 /* to */
            lconst_1
            lsub
            lstore 3 /* to */
         5: .line 559
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyFixnum
            getfield org.jruby.RubyFixnum.value:J
            lload 3 /* to */
            aload 2 /* block */
            invokestatic org.jruby.RubyInteger.fixnumUpto:(Lorg/jruby/runtime/ThreadContext;JJLorg/jruby/runtime/Block;)V
         6: .line 560
            return
        end local 3 // long to
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/jruby/RubyRange;
            0    7     1  context  Lorg/jruby/runtime/ThreadContext;
            0    7     2    block  Lorg/jruby/runtime/Block;
            1    7     3       to  J
    MethodParameters:
         Name  Flags
      context  
      block    

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

  public org.jruby.runtime.builtin.IRubyObject step19(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.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 569
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyRange.step:(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.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRange;
            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 step(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.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 574
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 1
            aload 0 /* this */
            aload 1 /* context */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            aload 2 /* block */
            invokevirtual org.jruby.RubyRange.stepCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* context */
            aload 0 /* this */
            ldc "step"
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyRange.stepSizeFn:(Lorg/jruby/runtime/ThreadContext;)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.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyRange;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"step"})
    MethodParameters:
         Name  Flags
      context  final
      block    final

  public org.jruby.runtime.builtin.IRubyObject step(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=7, locals=6, args_size=4
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject step
        start local 3 // org.jruby.runtime.Block block
         0: .line 579
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         1: .line 580
            aload 3 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 3
         2: .line 581
            aload 1 /* context */
            aload 0 /* this */
            ldc "step"
            iconst_1
            anewarray org.jruby.runtime.builtin.IRubyObject
            dup
            iconst_0
            aload 2 /* step */
            aastore
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyRange.stepSizeFn:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyEnumerator$SizeFn;
            invokestatic org.jruby.RubyEnumerator.enumeratorizeWithSize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyEnumerator$SizeFn;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 584
      StackMap locals: org.jruby.Ruby
      StackMap stack:
            aload 2 /* step */
            instanceof org.jruby.RubyNumeric
            ifne 5
         4: .line 585
            aload 2 /* step */
            ldc "to_int"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToInteger:(Ljava/lang/String;)Lorg/jruby/RubyInteger;
            astore 2 /* step */
         5: .line 587
      StackMap locals:
      StackMap stack:
            aload 4 /* runtime */
            invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            astore 5 /* zero */
        start local 5 // org.jruby.runtime.builtin.IRubyObject zero
         6: .line 588
            aload 2 /* step */
            aload 1 /* context */
            ldc "<"
            aload 5 /* zero */
            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
         7: .line 589
            aload 4 /* runtime */
            ldc "step can't be negative"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         8: .line 591
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 2 /* step */
            aload 1 /* context */
            ldc ">"
            aload 5 /* zero */
            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
            ifne 10
         9: .line 592
            aload 4 /* runtime */
            ldc "step can't be 0"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        10: .line 594
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* step */
            aload 3 /* block */
            invokevirtual org.jruby.RubyRange.stepCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 5 // org.jruby.runtime.builtin.IRubyObject zero
        end local 4 // org.jruby.Ruby runtime
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject step
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lorg/jruby/RubyRange;
            0   11     1  context  Lorg/jruby/runtime/ThreadContext;
            0   11     2     step  Lorg/jruby/runtime/builtin/IRubyObject;
            0   11     3    block  Lorg/jruby/runtime/Block;
            1   11     4  runtime  Lorg/jruby/Ruby;
            6   11     5     zero  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"step"})
    MethodParameters:
         Name  Flags
      context  final
      step     
      block    final

  private org.jruby.runtime.builtin.IRubyObject stepCommon(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=8, args_size=4
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject step
        start local 3 // org.jruby.runtime.Block block
         0: .line 598
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         1: .line 599
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyFixnum
            ifeq 4
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyFixnum
            ifeq 4
            aload 2 /* step */
            instanceof org.jruby.RubyFixnum
            ifeq 4
         2: .line 600
            aload 0 /* this */
            aload 1 /* context */
            aload 4 /* runtime */
            aload 2 /* step */
            checkcast org.jruby.RubyFixnum
            invokevirtual org.jruby.RubyFixnum.getLongValue:()J
            aload 3 /* block */
            invokevirtual org.jruby.RubyRange.fixnumStep:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/Ruby;JLorg/jruby/runtime/Block;)V
         3: .line 601
            goto 21
      StackMap locals: org.jruby.Ruby
      StackMap stack:
         4: aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyFloat
            ifne 5
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyFloat
            ifne 5
            aload 2 /* step */
            instanceof org.jruby.RubyFloat
            ifeq 7
         5: .line 602
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 4 /* runtime */
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 2 /* step */
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            aload 3 /* block */
            invokestatic org.jruby.RubyNumeric.floatStep:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;ZLorg/jruby/runtime/Block;)V
         6: .line 603
            goto 21
      StackMap locals:
      StackMap stack:
         7: aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyNumeric
            ifne 10
         8: .line 604
            aload 4 /* runtime */
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            ldc "to_int"
            invokestatic org.jruby.util.TypeConverter.checkIntegerType:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 10
         9: .line 605
            aload 4 /* runtime */
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            ldc "to_int"
            invokestatic org.jruby.util.TypeConverter.checkIntegerType:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 12
        10: .line 606
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 4 /* runtime */
            aload 2 /* step */
            aload 3 /* block */
            invokevirtual org.jruby.RubyRange.numericStep:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)V
        11: .line 607
            goto 21
        12: .line 608
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.checkStringType:()Lorg/jruby/runtime/builtin/IRubyObject;
            astore 5 /* tmp */
        start local 5 // org.jruby.runtime.builtin.IRubyObject tmp
        13: .line 609
            aload 5 /* tmp */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 18
        14: .line 610
            new org.jruby.RubyRange$StepBlockCallBack
            dup
            aload 3 /* block */
            aload 4 /* runtime */
            invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            aload 2 /* step */
            invokespecial org.jruby.RubyRange$StepBlockCallBack.<init>:(Lorg/jruby/runtime/Block;Lorg/jruby/RubyFixnum;Lorg/jruby/runtime/builtin/IRubyObject;)V
            astore 6 /* callback */
        start local 6 // org.jruby.RubyRange$StepBlockCallBack callback
        15: .line 611
            aload 1 /* context */
            aload 0 /* this */
            getstatic org.jruby.runtime.Signature.ONE_ARGUMENT:Lorg/jruby/runtime/Signature;
            aload 6 /* callback */
            invokestatic org.jruby.runtime.CallBlock.newCallClosure:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Signature;Lorg/jruby/runtime/BlockCallback;)Lorg/jruby/runtime/Block;
            astore 7 /* blockCallback */
        start local 7 // org.jruby.runtime.Block blockCallback
        16: .line 612
            aload 5 /* tmp */
            checkcast org.jruby.RubyString
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            aload 7 /* blockCallback */
            invokevirtual org.jruby.RubyString.uptoCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;ZLorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        end local 7 // org.jruby.runtime.Block blockCallback
        end local 6 // org.jruby.RubyRange$StepBlockCallBack callback
        17: .line 613
            goto 21
        18: .line 614
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            ldc "succ"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.respondsTo:(Ljava/lang/String;)Z
            ifne 20
        19: .line 615
            aload 4 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "can't iterate from "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.getName:()Ljava/lang/String;
            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
        20: .line 618
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            new org.jruby.RubyRange$StepBlockCallBack
            dup
            aload 3 /* block */
            aload 4 /* runtime */
            invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            aload 2 /* step */
            invokespecial org.jruby.RubyRange$StepBlockCallBack.<init>:(Lorg/jruby/runtime/Block;Lorg/jruby/RubyFixnum;Lorg/jruby/runtime/builtin/IRubyObject;)V
            invokevirtual org.jruby.RubyRange.rangeEach:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyRange$RangeCallBack;)V
        end local 5 // org.jruby.runtime.builtin.IRubyObject tmp
        21: .line 621
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 4 // org.jruby.Ruby runtime
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject step
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   22     0           this  Lorg/jruby/RubyRange;
            0   22     1        context  Lorg/jruby/runtime/ThreadContext;
            0   22     2           step  Lorg/jruby/runtime/builtin/IRubyObject;
            0   22     3          block  Lorg/jruby/runtime/Block;
            1   22     4        runtime  Lorg/jruby/Ruby;
           13   21     5            tmp  Lorg/jruby/runtime/builtin/IRubyObject;
           15   17     6       callback  Lorg/jruby/RubyRange$StepBlockCallBack;
           16   17     7  blockCallback  Lorg/jruby/runtime/Block;
    MethodParameters:
         Name  Flags
      context  
      step     
      block    

  private void fixnumStep(org.jruby.runtime.ThreadContext, org.jruby.Ruby, long, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/Ruby;JLorg/jruby/runtime/Block;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=12, args_size=5
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.Ruby runtime
        start local 3 // long step
        start local 5 // org.jruby.runtime.Block block
         0: .line 627
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyFixnum
            invokevirtual org.jruby.RubyFixnum.getLongValue:()J
            lstore 6 /* to */
        start local 6 // long to
         1: .line 628
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifeq 5
         2: .line 629
            lload 6 /* to */
            ldc -9223372036854775808
            lcmp
            ifne 4
         3: .line 630
            return
         4: .line 632
      StackMap locals: long
      StackMap stack:
            lload 6 /* to */
            lconst_1
            lsub
            lstore 6 /* to */
         5: .line 634
      StackMap locals:
      StackMap stack:
            ldc 9223372036854775807
            lload 3 /* step */
            lsub
            lstore 8 /* tov */
        start local 8 // long tov
         6: .line 635
            lload 6 /* to */
            lload 8 /* tov */
            lcmp
            ifge 8
         7: .line 636
            lload 6 /* to */
            lstore 8 /* tov */
         8: .line 639
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyFixnum
            invokevirtual org.jruby.RubyFixnum.getLongValue:()J
            lstore 10 /* i */
        start local 10 // long i
         9: goto 12
        10: .line 640
      StackMap locals: long
      StackMap stack:
            aload 5 /* block */
            aload 1 /* context */
            aload 2 /* runtime */
            lload 10 /* i */
            invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        11: .line 639
            lload 10 /* i */
            lload 3 /* step */
            ladd
            lstore 10 /* i */
      StackMap locals:
      StackMap stack:
        12: lload 10 /* i */
            lload 8 /* tov */
            lcmp
            ifle 10
        13: .line 642
            lload 10 /* i */
            lload 6 /* to */
            lcmp
            ifgt 15
        14: .line 643
            aload 5 /* block */
            aload 1 /* context */
            aload 2 /* runtime */
            lload 10 /* i */
            invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        15: .line 645
      StackMap locals:
      StackMap stack:
            return
        end local 10 // long i
        end local 8 // long tov
        end local 6 // long to
        end local 5 // org.jruby.runtime.Block block
        end local 3 // long step
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   16     0     this  Lorg/jruby/RubyRange;
            0   16     1  context  Lorg/jruby/runtime/ThreadContext;
            0   16     2  runtime  Lorg/jruby/Ruby;
            0   16     3     step  J
            0   16     5    block  Lorg/jruby/runtime/Block;
            1   16     6       to  J
            6   16     8      tov  J
            9   16    10        i  J
    MethodParameters:
         Name  Flags
      context  
      runtime  
      step     
      block    

  private void numericStep(org.jruby.runtime.ThreadContext, org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=9, args_size=5
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.Ruby runtime
        start local 3 // org.jruby.runtime.builtin.IRubyObject step
        start local 4 // org.jruby.runtime.Block block
         0: .line 648
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifeq 1
            ldc "<"
            goto 2
      StackMap locals:
      StackMap stack:
         1: ldc "<="
      StackMap locals:
      StackMap stack: java.lang.String
         2: astore 5 /* method */
        start local 5 // java.lang.String method
         3: .line 649
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            astore 6 /* beg */
        start local 6 // org.jruby.runtime.builtin.IRubyObject beg
         4: .line 650
            lconst_0
            lstore 7 /* i */
        start local 7 // long i
         5: .line 651
            goto 9
         6: .line 652
      StackMap locals: java.lang.String org.jruby.runtime.builtin.IRubyObject long
      StackMap stack:
            aload 4 /* block */
            aload 1 /* context */
            aload 6 /* beg */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         7: .line 653
            lload 7 /* i */
            lconst_1
            ladd
            lstore 7 /* i */
         8: .line 654
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 1 /* context */
            ldc "+"
            aload 2 /* runtime */
            lload 7 /* i */
            invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
            aload 1 /* context */
            ldc "*"
            aload 3 /* step */
            invokevirtual org.jruby.RubyFixnum.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 6 /* beg */
         9: .line 651
      StackMap locals:
      StackMap stack:
            aload 6 /* beg */
            aload 1 /* context */
            aload 5 /* method */
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            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
            ifne 6
        10: .line 656
            return
        end local 7 // long i
        end local 6 // org.jruby.runtime.builtin.IRubyObject beg
        end local 5 // java.lang.String method
        end local 4 // org.jruby.runtime.Block block
        end local 3 // org.jruby.runtime.builtin.IRubyObject step
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lorg/jruby/RubyRange;
            0   11     1  context  Lorg/jruby/runtime/ThreadContext;
            0   11     2  runtime  Lorg/jruby/Ruby;
            0   11     3     step  Lorg/jruby/runtime/builtin/IRubyObject;
            0   11     4    block  Lorg/jruby/runtime/Block;
            3   11     5   method  Ljava/lang/String;
            4   11     6      beg  Lorg/jruby/runtime/builtin/IRubyObject;
            5   11     7        i  J
    MethodParameters:
         Name  Flags
      context  
      runtime  
      step     
      block    

  private org.jruby.RubyEnumerator$SizeFn enumSizeFn(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyEnumerator$SizeFn;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 659
            aload 0 /* this */
            astore 2 /* self */
        start local 2 // org.jruby.RubyRange self
         1: .line 660
            new org.jruby.RubyRange$4
            dup
            aload 0 /* this */
            aload 2 /* self */
            aload 1 /* context */
            invokespecial org.jruby.RubyRange$4.<init>:(Lorg/jruby/RubyRange;Lorg/jruby/RubyRange;Lorg/jruby/runtime/ThreadContext;)V
            areturn
        end local 2 // org.jruby.RubyRange self
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyRange;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            1    2     2     self  Lorg/jruby/RubyRange;
    MethodParameters:
         Name  Flags
      context  final

  private org.jruby.RubyEnumerator$SizeFn stepSizeFn(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyEnumerator$SizeFn;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 669
            aload 0 /* this */
            astore 2 /* self */
        start local 2 // org.jruby.RubyRange self
         1: .line 670
            new org.jruby.RubyRange$5
            dup
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* self */
            invokespecial org.jruby.RubyRange$5.<init>:(Lorg/jruby/RubyRange;Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyRange;)V
            areturn
        end local 2 // org.jruby.RubyRange self
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyRange;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            1    2     2     self  Lorg/jruby/RubyRange;
    MethodParameters:
         Name  Flags
      context  final

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

  public org.jruby.runtime.builtin.IRubyObject include_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=11, args_size=3
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 710
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 712
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyNumeric
            ifne 4
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyNumeric
            ifne 4
         2: .line 713
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyRange.linearObject:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifne 4
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyRange.linearObject:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifne 4
         3: .line 712
            iconst_0
            goto 5
      StackMap locals: org.jruby.Ruby
      StackMap stack:
         4: iconst_1
      StackMap locals:
      StackMap stack: int
         5: istore 4 /* iterable */
        start local 4 // boolean iterable
         6: .line 715
            iload 4 /* iterable */
            ifne 9
         7: .line 716
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getInteger:()Lorg/jruby/RubyClass;
            aload 1 /* context */
            invokestatic org.jruby.RubyRange.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$RangeSites;
            getfield org.jruby.runtime.JavaSites$RangeSites.to_int_checked:Lorg/jruby/runtime/JavaSites$CheckedSites;
            invokestatic org.jruby.util.TypeConverter.convertToTypeWithCheck:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Lorg/jruby/runtime/JavaSites$CheckedSites;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 9
         8: .line 717
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getInteger:()Lorg/jruby/RubyClass;
            aload 1 /* context */
            invokestatic org.jruby.RubyRange.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$RangeSites;
            getfield org.jruby.runtime.JavaSites$RangeSites.to_int_checked:Lorg/jruby/runtime/JavaSites$CheckedSites;
            invokestatic org.jruby.util.TypeConverter.convertToTypeWithCheck:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Lorg/jruby/runtime/JavaSites$CheckedSites;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 10
         9: .line 718
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* obj */
            invokevirtual org.jruby.RubyRange.cover_p:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyBoolean;
            areturn
        10: .line 721
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyString
            ifeq 27
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyString
            ifeq 27
        11: .line 722
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyString
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            iconst_1
            if_icmpne 27
        12: .line 723
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyString
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            iconst_1
            if_icmpne 27
        13: .line 724
            aload 2 /* obj */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 14
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getFalse:()Lorg/jruby/RubyBoolean;
            areturn
        14: .line 725
      StackMap locals:
      StackMap stack:
            aload 2 /* obj */
            instanceof org.jruby.RubyString
            ifeq 27
        15: .line 726
            aload 2 /* obj */
            checkcast org.jruby.RubyString
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 5 /* objBytes */
        start local 5 // org.jruby.util.ByteList objBytes
        16: .line 727
            aload 5 /* objBytes */
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            iconst_1
            if_icmpeq 17
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getFalse:()Lorg/jruby/RubyBoolean;
            areturn
        17: .line 728
      StackMap locals: org.jruby.util.ByteList
      StackMap stack:
            aload 5 /* objBytes */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 5 /* objBytes */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            baload
            sipush 255
            iand
            istore 6 /* v */
        start local 6 // int v
        18: .line 729
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyString
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 7 /* begBytes */
        start local 7 // org.jruby.util.ByteList begBytes
        19: .line 730
            aload 7 /* begBytes */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 7 /* begBytes */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            baload
            sipush 255
            iand
            istore 8 /* b */
        start local 8 // int b
        20: .line 731
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyString
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 9 /* endBytes */
        start local 9 // org.jruby.util.ByteList endBytes
        21: .line 732
            aload 9 /* endBytes */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 9 /* endBytes */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            baload
            sipush 255
            iand
            istore 10 /* e */
        start local 10 // int e
        22: .line 733
            iload 6 /* v */
            invokestatic org.jcodings.Encoding.isAscii:(I)Z
            ifeq 27
            iload 8 /* b */
            invokestatic org.jcodings.Encoding.isAscii:(I)Z
            ifeq 27
            iload 10 /* e */
            invokestatic org.jcodings.Encoding.isAscii:(I)Z
            ifeq 27
        23: .line 734
            iload 8 /* b */
            iload 6 /* v */
            if_icmpgt 24
            iload 6 /* v */
            iload 10 /* e */
            if_icmplt 25
      StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby int org.jruby.util.ByteList int org.jruby.util.ByteList int org.jruby.util.ByteList int
      StackMap stack:
        24: aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifne 26
            iload 6 /* v */
            iload 10 /* e */
            if_icmpne 26
        25: .line 735
      StackMap locals:
      StackMap stack:
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getTrue:()Lorg/jruby/RubyBoolean;
            areturn
        26: .line 737
      StackMap locals:
      StackMap stack:
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getFalse:()Lorg/jruby/RubyBoolean;
            areturn
        end local 10 // int e
        end local 9 // org.jruby.util.ByteList endBytes
        end local 8 // int b
        end local 7 // org.jruby.util.ByteList begBytes
        end local 6 // int v
        end local 5 // org.jruby.util.ByteList objBytes
        27: .line 742
      StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby int
      StackMap stack:
            aload 1 /* context */
            aload 0 /* this */
            aload 2 /* obj */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokestatic org.jruby.runtime.Helpers.invokeSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // boolean iterable
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   28     0      this  Lorg/jruby/RubyRange;
            0   28     1   context  Lorg/jruby/runtime/ThreadContext;
            0   28     2       obj  Lorg/jruby/runtime/builtin/IRubyObject;
            1   28     3   runtime  Lorg/jruby/Ruby;
            6   28     4  iterable  Z
           16   27     5  objBytes  Lorg/jruby/util/ByteList;
           18   27     6         v  I
           19   27     7  begBytes  Lorg/jruby/util/ByteList;
           20   27     8         b  I
           21   27     9  endBytes  Lorg/jruby/util/ByteList;
           22   27    10         e  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"include?", "member?"}, frame = true)
    MethodParameters:
         Name  Flags
      context  
      obj      final

  private static boolean discreteObject(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 746
            aload 1 /* obj */
            instanceof org.jruby.RubyTime
            ifeq 1
            iconst_0
            ireturn
         1: .line 747
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            invokestatic org.jruby.RubyRange.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$RangeSites;
            getfield org.jruby.runtime.JavaSites$RangeSites.respond_to_succ:Lorg/jruby/runtime/callsite/RespondToCallSite;
            aload 0 /* context */
            aload 1 /* obj */
            aload 1 /* obj */
            iconst_0
            invokevirtual org.jruby.runtime.callsite.RespondToCallSite.respondsTo:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Z
            ireturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject obj
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0  context  Lorg/jruby/runtime/ThreadContext;
            0    2     1      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      obj      

  private static boolean linearObject(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 751
            aload 1 /* obj */
            instanceof org.jruby.RubyFixnum
            ifne 1
            aload 1 /* obj */
            instanceof org.jruby.RubyFloat
            ifeq 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
         2: .line 753
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            instanceof org.jruby.RubyBignum
            ifeq 3
            iconst_1
            ireturn
         3: .line 754
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            instanceof org.jruby.RubyNumeric
            ifeq 4
            iconst_1
            ireturn
         4: .line 755
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            instanceof org.jruby.RubyTime
            ifeq 5
            iconst_1
            ireturn
         5: .line 756
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject obj
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0  context  Lorg/jruby/runtime/ThreadContext;
            0    6     1      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      obj      

  public org.jruby.runtime.builtin.IRubyObject eqq_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 761
            aload 0 /* this */
            aload 1 /* context */
            ldc "include?"
            aload 2 /* obj */
            invokevirtual org.jruby.RubyRange.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRange;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"==="})
    MethodParameters:
         Name  Flags
      context  
      obj      

  public org.jruby.RubyBoolean cover_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.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 766
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 2 /* obj */
            invokestatic org.jruby.RubyRange.rangeLe:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            ifnonnull 2
         1: .line 767
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
         2: .line 769
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifeq 5
         3: .line 771
            aload 1 /* context */
            aload 2 /* obj */
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyRange.rangeLt:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            ifnull 4
            iconst_1
            goto 7
      StackMap locals:
      StackMap stack: org.jruby.Ruby
         4: iconst_0
            goto 7
      StackMap locals:
      StackMap stack: org.jruby.Ruby
         5: aload 1 /* context */
            aload 2 /* obj */
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyRange.rangeLe:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            ifnull 6
            iconst_1
            goto 7
      StackMap locals:
      StackMap stack: org.jruby.Ruby
         6: iconst_0
         7: .line 769
      StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject
      StackMap stack: org.jruby.Ruby int
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/RubyRange;
            0    8     1  context  Lorg/jruby/runtime/ThreadContext;
            0    8     2      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"cover?"})
    MethodParameters:
         Name  Flags
      context  
      obj      

  public org.jruby.runtime.builtin.IRubyObject min(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.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 776
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 2
         1: .line 777
            aload 1 /* context */
            aload 0 /* this */
            aload 2 /* block */
            invokestatic org.jruby.runtime.Helpers.invokeSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 780
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            getstatic org.jruby.runtime.invokedynamic.MethodNames.OP_CMP:Lorg/jruby/runtime/invokedynamic/MethodNames;
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.runtime.Helpers.invokedynamic:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyComparable.cmpint:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)I
            istore 3 /* cmp */
        start local 3 // int cmp
         3: .line 781
            iload 3 /* cmp */
            ifgt 4
            iload 3 /* cmp */
            ifne 5
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifeq 5
         4: .line 782
      StackMap locals: int
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         5: .line 785
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // int cmp
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/jruby/RubyRange;
            0    6     1  context  Lorg/jruby/runtime/ThreadContext;
            0    6     2    block  Lorg/jruby/runtime/Block;
            3    6     3      cmp  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(frame = true)
    MethodParameters:
         Name  Flags
      context  
      block    

  public org.jruby.runtime.builtin.IRubyObject max(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.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 790
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyNumeric
            istore 3 /* isNumeric */
        start local 3 // boolean isNumeric
         1: .line 792
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 2
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifeq 3
            iload 3 /* isNumeric */
            ifne 3
         2: .line 793
      StackMap locals: int
      StackMap stack:
            aload 1 /* context */
            aload 0 /* this */
            aload 2 /* block */
            invokestatic org.jruby.runtime.Helpers.invokeSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 796
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            getstatic org.jruby.runtime.invokedynamic.MethodNames.OP_CMP:Lorg/jruby/runtime/invokedynamic/MethodNames;
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.runtime.Helpers.invokedynamic:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/invokedynamic/MethodNames;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyComparable.cmpint:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)I
            istore 4 /* cmp */
        start local 4 // int cmp
         4: .line 797
            iload 4 /* cmp */
            ifle 6
         5: .line 798
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         6: .line 800
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ifeq 16
         7: .line 801
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyInteger
            ifne 9
         8: .line 802
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "cannot exclude non Integer end value"
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         9: .line 805
      StackMap locals:
      StackMap stack:
            iload 4 /* cmp */
            ifne 11
        10: .line 806
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        11: .line 809
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyInteger
            ifne 13
        12: .line 810
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "cannot exclude end value with non Integer begin value"
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        13: .line 812
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyFixnum
            ifeq 15
        14: .line 813
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyFixnum
            invokevirtual org.jruby.RubyFixnum.getLongValue:()J
            lconst_1
            lsub
            invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
            areturn
        15: .line 816
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 1 /* context */
            ldc "-"
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        16: .line 819
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // int cmp
        end local 3 // boolean isNumeric
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   17     0       this  Lorg/jruby/RubyRange;
            0   17     1    context  Lorg/jruby/runtime/ThreadContext;
            0   17     2      block  Lorg/jruby/runtime/Block;
            1   17     3  isNumeric  Z
            4   17     4        cmp  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(frame = true)
    MethodParameters:
         Name  Flags
      context  
      block    

  public org.jruby.runtime.builtin.IRubyObject min(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
        start local 3 // org.jruby.runtime.Block block
         0: .line 824
            aload 1 /* context */
            aload 0 /* this */
            aload 2 /* arg */
            aload 3 /* block */
            invokestatic org.jruby.runtime.Helpers.invokeSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRange;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(frame = true)
    MethodParameters:
         Name  Flags
      context  
      arg      
      block    

  public org.jruby.runtime.builtin.IRubyObject max(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
        start local 3 // org.jruby.runtime.Block block
         0: .line 829
            aload 1 /* context */
            aload 0 /* this */
            aload 2 /* arg */
            aload 3 /* block */
            invokestatic org.jruby.runtime.Helpers.invokeSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRange;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(frame = true)
    MethodParameters:
         Name  Flags
      context  
      arg      
      block    

  public org.jruby.runtime.builtin.IRubyObject first(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 834
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRange;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject begin(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 839
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRange;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject first(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=3
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 844
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 845
            aload 2 /* arg */
            invokestatic org.jruby.RubyNumeric.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            istore 4 /* num */
        start local 4 // int num
         2: .line 846
            iload 4 /* num */
            ifge 4
         3: .line 847
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "negative array size (or size too big)"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         4: .line 850
      StackMap locals: org.jruby.Ruby int
      StackMap stack:
            aload 3 /* runtime */
            iload 4 /* num */
            invokevirtual org.jruby.Ruby.newArray:(I)Lorg/jruby/RubyArray;
            astore 5 /* result */
        start local 5 // org.jruby.RubyArray result
         5: .line 852
            aload 1 /* context */
            aload 0 /* this */
            getstatic org.jruby.runtime.Signature.ONE_ARGUMENT:Lorg/jruby/runtime/Signature;
            new org.jruby.RubyRange$6
            dup
            aload 0 /* this */
            iload 4 /* num */
            aload 5 /* result */
            invokespecial org.jruby.RubyRange$6.<init>:(Lorg/jruby/RubyRange;ILorg/jruby/RubyArray;)V
            invokestatic org.jruby.RubyEnumerable.callEach:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Signature;Lorg/jruby/runtime/BlockCallback;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         6: .line 865
            goto 8
      StackMap locals: org.jruby.RubyRange org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby int org.jruby.RubyArray
      StackMap stack: org.jruby.exceptions.JumpException$SpecialJump
         7: pop
         8: .line 867
      StackMap locals:
      StackMap stack:
            aload 5 /* result */
            areturn
        end local 5 // org.jruby.RubyArray result
        end local 4 // int num
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/jruby/RubyRange;
            0    9     1  context  Lorg/jruby/runtime/ThreadContext;
            0    9     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
            1    9     3  runtime  Lorg/jruby/Ruby;
            2    9     4      num  I
            5    9     5   result  Lorg/jruby/RubyArray;
      Exception table:
        from    to  target  type
           5     6       7  Class org.jruby.exceptions.JumpException$SpecialJump
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  
      arg      

  public org.jruby.runtime.builtin.IRubyObject last(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 872
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRange;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

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

  public org.jruby.runtime.builtin.IRubyObject last(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.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 882
            aload 1 /* context */
            aload 0 /* this */
            aload 0 /* this */
            invokestatic org.jruby.RubyKernel.new_array:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyArray
            aload 2 /* arg */
            invokevirtual org.jruby.RubyArray.last:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRange;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  
      arg      

  public org.jruby.runtime.builtin.IRubyObject size(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.RubyRange this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 887
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyNumeric
            ifeq 2
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            instanceof org.jruby.RubyNumeric
            ifeq 2
         1: .line 888
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRange.begin:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyRange.end:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            invokestatic org.jruby.RubyNumeric.intervalStepSize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyNumeric;
            areturn
         2: .line 890
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyRange;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public final boolean isExcludeEnd();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyRange this
         0: .line 894
            aload 0 /* this */
            getfield org.jruby.RubyRange.isExclusive:Z
            ireturn
        end local 0 // org.jruby.RubyRange this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyRange;

  public static org.jruby.RubyRange rangeFromRangeLike(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.CallSite, org.jruby.runtime.CallSite, org.jruby.runtime.CallSite);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/CallSite;)Lorg/jruby/RubyRange;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=8, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject rangeLike
        start local 2 // org.jruby.runtime.CallSite beginSite
        start local 3 // org.jruby.runtime.CallSite endSite
        start local 4 // org.jruby.runtime.CallSite excludeEndSite
         0: .line 952
            aload 2 /* beginSite */
            aload 0 /* context */
            aload 1 /* rangeLike */
            aload 1 /* rangeLike */
            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;
            astore 5 /* begin */
        start local 5 // org.jruby.runtime.builtin.IRubyObject begin
         1: .line 953
            aload 3 /* endSite */
            aload 0 /* context */
            aload 1 /* rangeLike */
            aload 1 /* rangeLike */
            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;
            astore 6 /* end */
        start local 6 // org.jruby.runtime.builtin.IRubyObject end
         2: .line 954
            aload 4 /* excludeEndSite */
            aload 0 /* context */
            aload 1 /* rangeLike */
            aload 1 /* rangeLike */
            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;
            astore 7 /* excl */
        start local 7 // org.jruby.runtime.builtin.IRubyObject excl
         3: .line 955
            aload 0 /* context */
            aload 5 /* begin */
            aload 6 /* end */
            aload 7 /* excl */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            invokestatic org.jruby.RubyRange.newRange:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyRange;
            areturn
        end local 7 // org.jruby.runtime.builtin.IRubyObject excl
        end local 6 // org.jruby.runtime.builtin.IRubyObject end
        end local 5 // org.jruby.runtime.builtin.IRubyObject begin
        end local 4 // org.jruby.runtime.CallSite excludeEndSite
        end local 3 // org.jruby.runtime.CallSite endSite
        end local 2 // org.jruby.runtime.CallSite beginSite
        end local 1 // org.jruby.runtime.builtin.IRubyObject rangeLike
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0         context  Lorg/jruby/runtime/ThreadContext;
            0    4     1       rangeLike  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     2       beginSite  Lorg/jruby/runtime/CallSite;
            0    4     3         endSite  Lorg/jruby/runtime/CallSite;
            0    4     4  excludeEndSite  Lorg/jruby/runtime/CallSite;
            1    4     5           begin  Lorg/jruby/runtime/builtin/IRubyObject;
            2    4     6             end  Lorg/jruby/runtime/builtin/IRubyObject;
            3    4     7            excl  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
                Name  Flags
      context         
      rangeLike       
      beginSite       
      endSite         
      excludeEndSite  

  public static boolean isRangeLike(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.callsite.RespondToCallSite, org.jruby.runtime.callsite.RespondToCallSite);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/callsite/RespondToCallSite;Lorg/jruby/runtime/callsite/RespondToCallSite;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject obj
        start local 2 // org.jruby.runtime.callsite.RespondToCallSite respond_to_begin
        start local 3 // org.jruby.runtime.callsite.RespondToCallSite respond_to_end
         0: .line 968
            aload 2 /* respond_to_begin */
            aload 0 /* context */
            aload 1 /* obj */
            aload 1 /* obj */
            invokevirtual org.jruby.runtime.callsite.RespondToCallSite.respondsTo:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 3
         1: .line 969
            aload 3 /* respond_to_end */
            aload 0 /* context */
            aload 1 /* obj */
            aload 1 /* obj */
            invokevirtual org.jruby.runtime.callsite.RespondToCallSite.respondsTo:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifeq 3
         2: .line 968
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 3 // org.jruby.runtime.callsite.RespondToCallSite respond_to_end
        end local 2 // org.jruby.runtime.callsite.RespondToCallSite respond_to_begin
        end local 1 // org.jruby.runtime.builtin.IRubyObject obj
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0           context  Lorg/jruby/runtime/ThreadContext;
            0    4     1               obj  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     2  respond_to_begin  Lorg/jruby/runtime/callsite/RespondToCallSite;
            0    4     3    respond_to_end  Lorg/jruby/runtime/callsite/RespondToCallSite;
    MethodParameters:
                  Name  Flags
      context           
      obj               
      respond_to_begin  
      respond_to_end    

  public static boolean isRangeLike(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.JavaSites$CheckedSites, org.jruby.runtime.JavaSites$CheckedSites, org.jruby.runtime.JavaSites$CheckedSites);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/JavaSites$CheckedSites;Lorg/jruby/runtime/JavaSites$CheckedSites;Lorg/jruby/runtime/JavaSites$CheckedSites;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject obj
        start local 2 // org.jruby.runtime.JavaSites$CheckedSites begin_checked
        start local 3 // org.jruby.runtime.JavaSites$CheckedSites end_checked
        start local 4 // org.jruby.runtime.JavaSites$CheckedSites exclude_end_checked
         0: .line 983
            aload 1 /* obj */
            aload 0 /* context */
            aload 2 /* begin_checked */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.checkCallMethod:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/JavaSites$CheckedSites;)Lorg/jruby/runtime/builtin/IRubyObject;
            ifnull 4
         1: .line 984
            aload 1 /* obj */
            aload 0 /* context */
            aload 3 /* end_checked */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.checkCallMethod:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/JavaSites$CheckedSites;)Lorg/jruby/runtime/builtin/IRubyObject;
            ifnull 4
         2: .line 985
            aload 1 /* obj */
            aload 0 /* context */
            aload 4 /* exclude_end_checked */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.checkCallMethod:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/JavaSites$CheckedSites;)Lorg/jruby/runtime/builtin/IRubyObject;
            ifnull 4
         3: .line 983
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_0
            ireturn
        end local 4 // org.jruby.runtime.JavaSites$CheckedSites exclude_end_checked
        end local 3 // org.jruby.runtime.JavaSites$CheckedSites end_checked
        end local 2 // org.jruby.runtime.JavaSites$CheckedSites begin_checked
        end local 1 // org.jruby.runtime.builtin.IRubyObject obj
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    5     0              context  Lorg/jruby/runtime/ThreadContext;
            0    5     1                  obj  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     2        begin_checked  Lorg/jruby/runtime/JavaSites$CheckedSites;
            0    5     3          end_checked  Lorg/jruby/runtime/JavaSites$CheckedSites;
            0    5     4  exclude_end_checked  Lorg/jruby/runtime/JavaSites$CheckedSites;
    MethodParameters:
                     Name  Flags
      context              
      obj                  
      begin_checked        
      end_checked          
      exclude_end_checked  

  public static org.jruby.runtime.builtin.IRubyObject rangeBeginLength(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, int, int[], int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;I[II)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=13, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject range
        start local 2 // int len
        start local 3 // int[] begLen
        start local 4 // int err
         0: .line 990
            aload 0 /* context */
            invokestatic org.jruby.RubyRange.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$RangeSites;
            astore 5 /* sites */
        start local 5 // org.jruby.runtime.JavaSites$RangeSites sites
         1: .line 992
            aload 0 /* context */
            aload 1 /* range */
            aload 5 /* sites */
            getfield org.jruby.runtime.JavaSites$RangeSites.respond_to_begin:Lorg/jruby/runtime/callsite/RespondToCallSite;
            aload 5 /* sites */
            getfield org.jruby.runtime.JavaSites$RangeSites.respond_to_end:Lorg/jruby/runtime/callsite/RespondToCallSite;
            invokestatic org.jruby.RubyRange.isRangeLike:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/callsite/RespondToCallSite;Lorg/jruby/runtime/callsite/RespondToCallSite;)Z
            ifne 2
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
         2: .line 994
      StackMap locals: org.jruby.runtime.JavaSites$RangeSites
      StackMap stack:
            aload 5 /* sites */
            getfield org.jruby.runtime.JavaSites$RangeSites.begin:Lorg/jruby/runtime/CallSite;
            aload 0 /* context */
            aload 1 /* range */
            aload 1 /* range */
            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;
            astore 6 /* _beg */
        start local 6 // org.jruby.runtime.builtin.IRubyObject _beg
         3: .line 995
            aload 5 /* sites */
            getfield org.jruby.runtime.JavaSites$RangeSites.end:Lorg/jruby/runtime/CallSite;
            aload 0 /* context */
            aload 1 /* range */
            aload 1 /* range */
            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;
            astore 7 /* _end */
        start local 7 // org.jruby.runtime.builtin.IRubyObject _end
         4: .line 996
            aload 5 /* sites */
            getfield org.jruby.runtime.JavaSites$RangeSites.exclude_end:Lorg/jruby/runtime/CallSite;
            aload 0 /* context */
            aload 1 /* range */
            aload 1 /* range */
            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;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            istore 8 /* excludeEnd */
        start local 8 // boolean excludeEnd
         5: .line 997
            aload 6 /* _beg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToInteger:()Lorg/jruby/RubyInteger;
            invokevirtual org.jruby.RubyInteger.getIntValue:()I
            istore 9 /* beg */
        start local 9 // int beg
         6: .line 998
            aload 7 /* _end */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToInteger:()Lorg/jruby/RubyInteger;
            invokevirtual org.jruby.RubyInteger.getIntValue:()I
            istore 10 /* end */
        start local 10 // int end
         7: .line 999
            iload 9 /* beg */
            istore 11 /* origBeg */
        start local 11 // int origBeg
         8: .line 1000
            iload 10 /* end */
            istore 12 /* origEnd */
        start local 12 // int origEnd
         9: .line 1002
            iload 9 /* beg */
            ifge 13
        10: .line 1003
            iload 9 /* beg */
            iload 2 /* len */
            iadd
            istore 9 /* beg */
        11: .line 1004
            iload 9 /* beg */
            ifge 13
        12: .line 1005
            aload 0 /* context */
            iload 11 /* origBeg */
            iload 12 /* origEnd */
            iload 8 /* excludeEnd */
            iload 4 /* err */
            invokestatic org.jruby.RubyRange.rangeBeginLengthError:(Lorg/jruby/runtime/ThreadContext;IIZI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        13: .line 1009
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject int int[] int org.jruby.runtime.JavaSites$RangeSites org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject int int int int int
      StackMap stack:
            iload 10 /* end */
            ifge 15
        14: .line 1010
            iload 10 /* end */
            iload 2 /* len */
            iadd
            istore 10 /* end */
        15: .line 1013
      StackMap locals:
      StackMap stack:
            iload 8 /* excludeEnd */
            ifne 16
            iinc 10 /* end */ 1
        16: .line 1015
      StackMap locals:
      StackMap stack:
            iload 4 /* err */
            ifeq 17
            iload 4 /* err */
            iconst_2
            if_icmpne 19
        17: .line 1016
      StackMap locals:
      StackMap stack:
            iload 9 /* beg */
            iload 2 /* len */
            if_icmple 18
            aload 0 /* context */
            iload 11 /* origBeg */
            iload 12 /* origEnd */
            iload 8 /* excludeEnd */
            iload 4 /* err */
            invokestatic org.jruby.RubyRange.rangeBeginLengthError:(Lorg/jruby/runtime/ThreadContext;IIZI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        18: .line 1017
      StackMap locals:
      StackMap stack:
            iload 10 /* end */
            iload 2 /* len */
            if_icmple 19
            iload 2 /* len */
            istore 10 /* end */
        19: .line 1020
      StackMap locals:
      StackMap stack:
            iload 10 /* end */
            iload 9 /* beg */
            isub
            istore 2 /* len */
        20: .line 1021
            iload 2 /* len */
            ifge 21
            iconst_0
            istore 2 /* len */
        21: .line 1023
      StackMap locals:
      StackMap stack:
            aload 3 /* begLen */
            iconst_0
            iload 9 /* beg */
            iastore
        22: .line 1024
            aload 3 /* begLen */
            iconst_1
            iload 2 /* len */
            iastore
        23: .line 1026
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
            areturn
        end local 12 // int origEnd
        end local 11 // int origBeg
        end local 10 // int end
        end local 9 // int beg
        end local 8 // boolean excludeEnd
        end local 7 // org.jruby.runtime.builtin.IRubyObject _end
        end local 6 // org.jruby.runtime.builtin.IRubyObject _beg
        end local 5 // org.jruby.runtime.JavaSites$RangeSites sites
        end local 4 // int err
        end local 3 // int[] begLen
        end local 2 // int len
        end local 1 // org.jruby.runtime.builtin.IRubyObject range
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   24     0     context  Lorg/jruby/runtime/ThreadContext;
            0   24     1       range  Lorg/jruby/runtime/builtin/IRubyObject;
            0   24     2         len  I
            0   24     3      begLen  [I
            0   24     4         err  I
            1   24     5       sites  Lorg/jruby/runtime/JavaSites$RangeSites;
            3   24     6        _beg  Lorg/jruby/runtime/builtin/IRubyObject;
            4   24     7        _end  Lorg/jruby/runtime/builtin/IRubyObject;
            5   24     8  excludeEnd  Z
            6   24     9         beg  I
            7   24    10         end  I
            8   24    11     origBeg  I
            9   24    12     origEnd  I
    MethodParameters:
         Name  Flags
      context  
      range    
      len      
      begLen   
      err      

  private static org.jruby.runtime.builtin.IRubyObject rangeBeginLengthError(org.jruby.runtime.ThreadContext, int, int, boolean, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;IIZI)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // int beg
        start local 2 // int end
        start local 3 // boolean excludeEnd
        start local 4 // int err
         0: .line 1030
            iload 4 /* err */
            ifeq 3
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            iload 1 /* beg */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 3 /* excludeEnd */
            ifeq 1
            ldc "."
            goto 2
      StackMap locals: org.jruby.runtime.ThreadContext int int int int
      StackMap stack: org.jruby.Ruby java.lang.StringBuilder
         1: ldc ""
      StackMap locals: org.jruby.runtime.ThreadContext int int int int
      StackMap stack: org.jruby.Ruby java.lang.StringBuilder java.lang.String
         2: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* end */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " out of range"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         3: .line 1031
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // int err
        end local 3 // boolean excludeEnd
        end local 2 // int end
        end local 1 // int beg
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0     context  Lorg/jruby/runtime/ThreadContext;
            0    4     1         beg  I
            0    4     2         end  I
            0    4     3  excludeEnd  Z
            0    4     4         err  I
    MethodParameters:
            Name  Flags
      context     
      beg         
      end         
      excludeEnd  
      err         

  private static org.jruby.runtime.JavaSites$RangeSites sites(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$RangeSites;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.ThreadContext context
         0: .line 1035
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.sites:Lorg/jruby/runtime/JavaSites;
            getfield org.jruby.runtime.JavaSites.Range:Lorg/jruby/runtime/JavaSites$RangeSites;
            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  
}
SourceFile: "RubyRange.java"
NestMembers:
  org.jruby.RubyRange$1  org.jruby.RubyRange$2  org.jruby.RubyRange$3  org.jruby.RubyRange$4  org.jruby.RubyRange$5  org.jruby.RubyRange$6  org.jruby.RubyRange$InspectRecursive  org.jruby.RubyRange$RangeCallBack  org.jruby.RubyRange$StepBlockCallBack
InnerClasses:
  public abstract SizeFn = org.jruby.RubyEnumerator$SizeFn of org.jruby.RubyEnumerator
  public final JavaClassKindOf = org.jruby.RubyModule$JavaClassKindOf of org.jruby.RubyModule
  org.jruby.RubyRange$1
  org.jruby.RubyRange$2
  org.jruby.RubyRange$3
  org.jruby.RubyRange$4
  org.jruby.RubyRange$5
  org.jruby.RubyRange$6
  private InspectRecursive = org.jruby.RubyRange$InspectRecursive of org.jruby.RubyRange
  private abstract RangeCallBack = org.jruby.RubyRange$RangeCallBack of org.jruby.RubyRange
  private final StepBlockCallBack = org.jruby.RubyRange$StepBlockCallBack of org.jruby.RubyRange
  public SpecialJump = org.jruby.exceptions.JumpException$SpecialJump of org.jruby.exceptions.JumpException
  public CheckedSites = org.jruby.runtime.JavaSites$CheckedSites of org.jruby.runtime.JavaSites
  public RangeSites = org.jruby.runtime.JavaSites$RangeSites of org.jruby.runtime.JavaSites
  public abstract RecursiveFunctionEx = org.jruby.runtime.ThreadContext$RecursiveFunctionEx of org.jruby.runtime.ThreadContext
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyClass(name = {"Range"}, include = {"Enumerable"})