public class org.jruby.RubyRegexp extends org.jruby.RubyObject implements org.jruby.parser.ReOptions, org.jruby.runtime.encoding.EncodingCapable, org.jruby.runtime.encoding.MarshalEncoding
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.RubyRegexp
  super_class: org.jruby.RubyObject
{
  org.joni.Regex pattern;
    descriptor: Lorg/joni/Regex;
    flags: (0x0000) 

  private org.jruby.util.ByteList str;
    descriptor: Lorg/jruby/util/ByteList;
    flags: (0x0002) ACC_PRIVATE

  private org.jruby.util.RegexpOptions options;
    descriptor: Lorg/jruby/util/RegexpOptions;
    flags: (0x0002) ACC_PRIVATE

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

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

  static final org.jruby.util.collections.WeakValuedMap<org.jruby.util.ByteList, org.joni.Regex> patternCache;
    descriptor: Lorg/jruby/util/collections/WeakValuedMap;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/util/collections/WeakValuedMap<Lorg/jruby/util/ByteList;Lorg/joni/Regex;>;

  static final org.jruby.util.collections.WeakValuedMap<org.jruby.util.ByteList, org.joni.Regex> quotedPatternCache;
    descriptor: Lorg/jruby/util/collections/WeakValuedMap;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/util/collections/WeakValuedMap<Lorg/jruby/util/ByteList;Lorg/joni/Regex;>;

  static final org.jruby.util.collections.WeakValuedMap<org.jruby.util.ByteList, org.joni.Regex> preprocessedPatternCache;
    descriptor: Lorg/jruby/util/collections/WeakValuedMap;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/util/collections/WeakValuedMap<Lorg/jruby/util/ByteList;Lorg/joni/Regex;>;

  private static org.jruby.runtime.ObjectAllocator REGEXP_ALLOCATOR;
    descriptor: Lorg/jruby/runtime/ObjectAllocator;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

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

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 84
            ldc Lorg/jruby/RubyRegexp;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.jruby.RubyRegexp.$assertionsDisabled:Z
         3: .line 145
            new org.jruby.util.collections.WeakValuedMap
            dup
            invokespecial org.jruby.util.collections.WeakValuedMap.<init>:()V
            putstatic org.jruby.RubyRegexp.patternCache:Lorg/jruby/util/collections/WeakValuedMap;
         4: .line 146
            new org.jruby.util.collections.WeakValuedMap
            dup
            invokespecial org.jruby.util.collections.WeakValuedMap.<init>:()V
            putstatic org.jruby.RubyRegexp.quotedPatternCache:Lorg/jruby/util/collections/WeakValuedMap;
         5: .line 147
            new org.jruby.util.collections.WeakValuedMap
            dup
            invokespecial org.jruby.util.collections.WeakValuedMap.<init>:()V
            putstatic org.jruby.RubyRegexp.preprocessedPatternCache:Lorg/jruby/util/collections/WeakValuedMap;
         6: .line 223
            new org.jruby.RubyRegexp$1
            dup
            invokespecial org.jruby.RubyRegexp$1.<init>:()V
            putstatic org.jruby.RubyRegexp.REGEXP_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
         7: .line 1417
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void setLiteral();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 93
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            iconst_1
            invokevirtual org.jruby.util.RegexpOptions.setLiteral:(Z)V
         1: .line 94
            return
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyRegexp;

  public void clearLiteral();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 97
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            iconst_0
            invokevirtual org.jruby.util.RegexpOptions.setLiteral:(Z)V
         1: .line 98
            return
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyRegexp;

  public boolean isLiteral();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 101
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            invokevirtual org.jruby.util.RegexpOptions.isLiteral:()Z
            ireturn
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyRegexp;

  public boolean isKCodeDefault();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 105
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            invokevirtual org.jruby.util.RegexpOptions.isKcodeDefault:()Z
            ireturn
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyRegexp;

  public void setEncodingNone();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 109
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            iconst_1
            invokevirtual org.jruby.util.RegexpOptions.setEncodingNone:(Z)V
         1: .line 110
            return
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyRegexp;

  public void clearEncodingNone();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 113
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            iconst_0
            invokevirtual org.jruby.util.RegexpOptions.setEncodingNone:(Z)V
         1: .line 114
            return
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyRegexp;

  public boolean isEncodingNone();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 117
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            invokevirtual org.jruby.util.RegexpOptions.isEncodingNone:()Z
            ireturn
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyRegexp;

  public org.jruby.util.KCode getKCode();
    descriptor: ()Lorg/jruby/util/KCode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 121
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            invokevirtual org.jruby.util.RegexpOptions.getKCode:()Lorg/jruby/util/KCode;
            areturn
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyRegexp;

  public org.jcodings.Encoding getEncoding();
    descriptor: ()Lorg/jcodings/Encoding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 126
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
            areturn
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyRegexp;

  public void setEncoding(org.jcodings.Encoding);
    descriptor: (Lorg/jcodings/Encoding;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jcodings.Encoding encoding
         0: .line 133
            return
        end local 1 // org.jcodings.Encoding encoding
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/jruby/RubyRegexp;
            0    1     1  encoding  Lorg/jcodings/Encoding;
    MethodParameters:
          Name  Flags
      encoding  

  public boolean shouldMarshalEncoding();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 137
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.getEncoding:()Lorg/jcodings/Encoding;
            getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
            if_acmpeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyRegexp;

  public org.jcodings.Encoding getMarshalEncoding();
    descriptor: ()Lorg/jcodings/Encoding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 142
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.getEncoding:()Lorg/jcodings/Encoding;
            areturn
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyRegexp;

  private static org.joni.Regex makeRegexp(org.jruby.Ruby, org.jruby.util.ByteList, org.jruby.util.RegexpOptions, org.jcodings.Encoding);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;)Lorg/joni/Regex;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=5, args_size=4
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.util.ByteList bytes
        start local 2 // org.jruby.util.RegexpOptions options
        start local 3 // org.jcodings.Encoding enc
         0: .line 151
            aload 1 /* bytes */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            istore 4 /* p */
        start local 4 // int p
         1: .line 152
            new org.joni.Regex
            dup
            aload 1 /* bytes */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            iload 4 /* p */
            iload 4 /* p */
            aload 1 /* bytes */
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            iadd
            aload 2 /* options */
            invokevirtual org.jruby.util.RegexpOptions.toJoniOptions:()I
            aload 3 /* enc */
            getstatic org.joni.Syntax.DEFAULT:Lorg/joni/Syntax;
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getRegexpWarnings:()Lorg/joni/WarnCallback;
            invokespecial org.joni.Regex.<init>:([BIIILorg/jcodings/Encoding;Lorg/joni/Syntax;Lorg/joni/WarnCallback;)V
         2: areturn
        end local 4 // int p
         3: .line 153
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 4 /* e */
        start local 4 // java.lang.Exception e
         4: .line 154
            aload 0 /* runtime */
            aload 1 /* bytes */
            aload 3 /* enc */
            aload 2 /* options */
            aload 4 /* e */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            invokestatic org.jruby.util.RegexpSupport.raiseRegexpError19:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;Ljava/lang/String;)V
         5: .line 155
            aconst_null
            areturn
        end local 4 // java.lang.Exception e
        end local 3 // org.jcodings.Encoding enc
        end local 2 // org.jruby.util.RegexpOptions options
        end local 1 // org.jruby.util.ByteList bytes
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0  runtime  Lorg/jruby/Ruby;
            0    6     1    bytes  Lorg/jruby/util/ByteList;
            0    6     2  options  Lorg/jruby/util/RegexpOptions;
            0    6     3      enc  Lorg/jcodings/Encoding;
            1    3     4        p  I
            4    6     4        e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.Exception
    MethodParameters:
         Name  Flags
      runtime  
      bytes    
      options  
      enc      

  public static org.joni.Regex getRegexpFromCache(org.jruby.Ruby, org.jruby.util.ByteList, org.jcodings.Encoding, org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/joni/Regex;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.util.ByteList bytes
        start local 2 // org.jcodings.Encoding enc
        start local 3 // org.jruby.util.RegexpOptions options
         0: .line 160
            getstatic org.jruby.RubyRegexp.patternCache:Lorg/jruby/util/collections/WeakValuedMap;
            aload 1 /* bytes */
            invokevirtual org.jruby.util.collections.WeakValuedMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.joni.Regex
            astore 4 /* regex */
        start local 4 // org.joni.Regex regex
         1: .line 161
            aload 4 /* regex */
            ifnull 2
            aload 4 /* regex */
            invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
            aload 2 /* enc */
            if_acmpne 2
            aload 4 /* regex */
            invokevirtual org.joni.Regex.getOptions:()I
            aload 3 /* options */
            invokevirtual org.jruby.util.RegexpOptions.toJoniOptions:()I
            if_icmpne 2
            aload 4 /* regex */
            areturn
         2: .line 162
      StackMap locals: org.joni.Regex
      StackMap stack:
            aload 0 /* runtime */
            aload 1 /* bytes */
            aload 3 /* options */
            aload 2 /* enc */
            invokestatic org.jruby.RubyRegexp.makeRegexp:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;)Lorg/joni/Regex;
            astore 4 /* regex */
         3: .line 163
            aload 4 /* regex */
            aload 1 /* bytes */
            invokevirtual org.joni.Regex.setUserObject:(Ljava/lang/Object;)V
         4: .line 164
            getstatic org.jruby.RubyRegexp.patternCache:Lorg/jruby/util/collections/WeakValuedMap;
            aload 1 /* bytes */
            aload 4 /* regex */
            invokevirtual org.jruby.util.collections.WeakValuedMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 165
            aload 4 /* regex */
            areturn
        end local 4 // org.joni.Regex regex
        end local 3 // org.jruby.util.RegexpOptions options
        end local 2 // org.jcodings.Encoding enc
        end local 1 // org.jruby.util.ByteList bytes
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0  runtime  Lorg/jruby/Ruby;
            0    6     1    bytes  Lorg/jruby/util/ByteList;
            0    6     2      enc  Lorg/jcodings/Encoding;
            0    6     3  options  Lorg/jruby/util/RegexpOptions;
            1    6     4    regex  Lorg/joni/Regex;
    MethodParameters:
         Name  Flags
      runtime  
      bytes    
      enc      
      options  

  static org.joni.Regex getQuotedRegexpFromCache(org.jruby.Ruby, org.jruby.RubyString, org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/joni/Regex;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.RubyString str
        start local 2 // org.jruby.util.RegexpOptions options
         0: .line 169
            aload 1 /* str */
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 3 /* bytes */
        start local 3 // org.jruby.util.ByteList bytes
         1: .line 170
            getstatic org.jruby.RubyRegexp.quotedPatternCache:Lorg/jruby/util/collections/WeakValuedMap;
            aload 3 /* bytes */
            invokevirtual org.jruby.util.collections.WeakValuedMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.joni.Regex
            astore 4 /* regex */
        start local 4 // org.joni.Regex regex
         2: .line 171
            aload 1 /* str */
            invokevirtual org.jruby.RubyString.isAsciiOnly:()Z
            ifeq 3
            getstatic org.jcodings.specific.USASCIIEncoding.INSTANCE:Lorg/jcodings/specific/USASCIIEncoding;
            goto 4
      StackMap locals: org.jruby.util.ByteList org.joni.Regex
      StackMap stack:
         3: aload 3 /* bytes */
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
      StackMap locals:
      StackMap stack: org.jcodings.Encoding
         4: astore 5 /* enc */
        start local 5 // org.jcodings.Encoding enc
         5: .line 172
            aload 4 /* regex */
            ifnull 6
            aload 4 /* regex */
            invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
            aload 5 /* enc */
            if_acmpne 6
            aload 4 /* regex */
            invokevirtual org.joni.Regex.getOptions:()I
            aload 2 /* options */
            invokevirtual org.jruby.util.RegexpOptions.toJoniOptions:()I
            if_icmpne 6
            aload 4 /* regex */
            areturn
         6: .line 173
      StackMap locals: org.jcodings.Encoding
      StackMap stack:
            aload 1 /* str */
            invokestatic org.jruby.RubyRegexp.quote:(Lorg/jruby/RubyString;)Lorg/jruby/util/ByteList;
            astore 6 /* quoted */
        start local 6 // org.jruby.util.ByteList quoted
         7: .line 174
            aload 0 /* runtime */
            aload 6 /* quoted */
            aload 2 /* options */
            aload 6 /* quoted */
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            invokestatic org.jruby.RubyRegexp.makeRegexp:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;)Lorg/joni/Regex;
            astore 4 /* regex */
         8: .line 175
            aload 4 /* regex */
            aload 6 /* quoted */
            invokevirtual org.joni.Regex.setUserObject:(Ljava/lang/Object;)V
         9: .line 176
            getstatic org.jruby.RubyRegexp.quotedPatternCache:Lorg/jruby/util/collections/WeakValuedMap;
            aload 3 /* bytes */
            aload 4 /* regex */
            invokevirtual org.jruby.util.collections.WeakValuedMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 177
            aload 4 /* regex */
            areturn
        end local 6 // org.jruby.util.ByteList quoted
        end local 5 // org.jcodings.Encoding enc
        end local 4 // org.joni.Regex regex
        end local 3 // org.jruby.util.ByteList bytes
        end local 2 // org.jruby.util.RegexpOptions options
        end local 1 // org.jruby.RubyString str
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0  runtime  Lorg/jruby/Ruby;
            0   11     1      str  Lorg/jruby/RubyString;
            0   11     2  options  Lorg/jruby/util/RegexpOptions;
            1   11     3    bytes  Lorg/jruby/util/ByteList;
            2   11     4    regex  Lorg/joni/Regex;
            5   11     5      enc  Lorg/jcodings/Encoding;
            7   11     6   quoted  Lorg/jruby/util/ByteList;
    MethodParameters:
         Name  Flags
      runtime  
      str      
      options  

  private static org.joni.Regex getPreprocessedRegexpFromCache(org.jruby.Ruby, org.jruby.util.ByteList, org.jcodings.Encoding, org.jruby.util.RegexpOptions, org.jruby.util.RegexpSupport$ErrorMode);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;Lorg/jruby/util/RegexpSupport$ErrorMode;)Lorg/joni/Regex;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.util.ByteList bytes
        start local 2 // org.jcodings.Encoding enc
        start local 3 // org.jruby.util.RegexpOptions options
        start local 4 // org.jruby.util.RegexpSupport$ErrorMode mode
         0: .line 192
            getstatic org.jruby.RubyRegexp.preprocessedPatternCache:Lorg/jruby/util/collections/WeakValuedMap;
            aload 1 /* bytes */
            invokevirtual org.jruby.util.collections.WeakValuedMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.joni.Regex
            astore 5 /* regex */
        start local 5 // org.joni.Regex regex
         1: .line 193
            aload 5 /* regex */
            ifnull 2
            aload 5 /* regex */
            invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
            aload 2 /* enc */
            if_acmpne 2
            aload 5 /* regex */
            invokevirtual org.joni.Regex.getOptions:()I
            aload 3 /* options */
            invokevirtual org.jruby.util.RegexpOptions.toJoniOptions:()I
            if_icmpne 2
            aload 5 /* regex */
            areturn
         2: .line 194
      StackMap locals: org.joni.Regex
      StackMap stack:
            aload 0 /* runtime */
            aload 1 /* bytes */
            aload 2 /* enc */
            iconst_1
            anewarray org.jcodings.Encoding
            getstatic org.jruby.util.RegexpSupport$ErrorMode.RAISE:Lorg/jruby/util/RegexpSupport$ErrorMode;
            invokestatic org.jruby.util.RegexpSupport.preprocess:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpSupport$ErrorMode;)Lorg/jruby/util/ByteList;
            astore 6 /* preprocessed */
        start local 6 // org.jruby.util.ByteList preprocessed
         3: .line 195
            aload 0 /* runtime */
            aload 6 /* preprocessed */
            aload 3 /* options */
            aload 2 /* enc */
            invokestatic org.jruby.RubyRegexp.makeRegexp:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;)Lorg/joni/Regex;
            astore 5 /* regex */
         4: .line 196
            aload 5 /* regex */
            aload 6 /* preprocessed */
            invokevirtual org.joni.Regex.setUserObject:(Ljava/lang/Object;)V
         5: .line 197
            getstatic org.jruby.RubyRegexp.preprocessedPatternCache:Lorg/jruby/util/collections/WeakValuedMap;
            aload 1 /* bytes */
            aload 5 /* regex */
            invokevirtual org.jruby.util.collections.WeakValuedMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 198
            aload 5 /* regex */
            areturn
        end local 6 // org.jruby.util.ByteList preprocessed
        end local 5 // org.joni.Regex regex
        end local 4 // org.jruby.util.RegexpSupport$ErrorMode mode
        end local 3 // org.jruby.util.RegexpOptions options
        end local 2 // org.jcodings.Encoding enc
        end local 1 // org.jruby.util.ByteList bytes
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0       runtime  Lorg/jruby/Ruby;
            0    7     1         bytes  Lorg/jruby/util/ByteList;
            0    7     2           enc  Lorg/jcodings/Encoding;
            0    7     3       options  Lorg/jruby/util/RegexpOptions;
            0    7     4          mode  Lorg/jruby/util/RegexpSupport$ErrorMode;
            1    7     5         regex  Lorg/joni/Regex;
            3    7     6  preprocessed  Lorg/jruby/util/ByteList;
    MethodParameters:
         Name  Flags
      runtime  
      bytes    
      enc      
      options  
      mode     

  public static org.jruby.RubyClass createRegexpClass(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 202
            aload 0 /* runtime */
            ldc "Regexp"
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
            getstatic org.jruby.RubyRegexp.REGEXP_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 /* regexpClass */
        start local 1 // org.jruby.RubyClass regexpClass
         1: .line 203
            aload 0 /* runtime */
            aload 1 /* regexpClass */
            invokevirtual org.jruby.Ruby.setRegexp:(Lorg/jruby/RubyClass;)V
         2: .line 205
            aload 1 /* regexpClass */
            getstatic org.jruby.runtime.ClassIndex.REGEXP:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.RubyClass.setClassIndex:(Lorg/jruby/runtime/ClassIndex;)V
         3: .line 206
            aload 1 /* regexpClass */
            ldc Lorg/jruby/RubyRegexp;
            invokevirtual org.jruby.RubyClass.setReifiedClass:(Ljava/lang/Class;)V
         4: .line 208
            aload 1 /* regexpClass */
            new org.jruby.RubyModule$JavaClassKindOf
            dup
            ldc Lorg/jruby/RubyRegexp;
            invokespecial org.jruby.RubyModule$JavaClassKindOf.<init>:(Ljava/lang/Class;)V
            putfield org.jruby.RubyClass.kindOf:Lorg/jruby/RubyModule$KindOf;
         5: .line 210
            aload 1 /* regexpClass */
            ldc "IGNORECASE"
            aload 0 /* runtime */
            iconst_1
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
         6: .line 211
            aload 1 /* regexpClass */
            ldc "EXTENDED"
            aload 0 /* runtime */
            iconst_2
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
         7: .line 212
            aload 1 /* regexpClass */
            ldc "MULTILINE"
            aload 0 /* runtime */
            iconst_4
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
         8: .line 214
            aload 1 /* regexpClass */
            ldc "FIXEDENCODING"
            aload 0 /* runtime */
            bipush 16
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
         9: .line 215
            aload 1 /* regexpClass */
            ldc "NOENCODING"
            aload 0 /* runtime */
            bipush 32
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
        10: .line 217
            aload 1 /* regexpClass */
            ldc Lorg/jruby/RubyRegexp;
            invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
        11: .line 218
            aload 1 /* regexpClass */
            invokevirtual org.jruby.RubyClass.getSingletonClass:()Lorg/jruby/RubyClass;
            ldc "compile"
            ldc "new"
            invokevirtual org.jruby.RubyClass.defineAlias:(Ljava/lang/String;Ljava/lang/String;)V
        12: .line 220
            aload 1 /* regexpClass */
            areturn
        end local 1 // org.jruby.RubyClass regexpClass
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0      runtime  Lorg/jruby/Ruby;
            1   13     1  regexpClass  Lorg/jruby/RubyClass;
    MethodParameters:
         Name  Flags
      runtime  

  public static int matcherSearch(org.jruby.runtime.ThreadContext, org.joni.Matcher, int, int, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/joni/Matcher;III)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=7, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.joni.Matcher matcher
        start local 2 // int start
        start local 3 // int range
        start local 4 // int option
         0: .line 231
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getInstanceConfig:()Lorg/jruby/RubyInstanceConfig;
            invokevirtual org.jruby.RubyInstanceConfig.isInterruptibleRegexps:()Z
            ifne 1
            aload 1 /* matcher */
            iload 2 /* start */
            iload 3 /* range */
            iload 4 /* option */
            invokevirtual org.joni.Matcher.search:(III)I
            ireturn
         1: .line 234
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getThread:()Lorg/jruby/RubyThread;
            astore 5 /* thread */
        start local 5 // org.jruby.RubyThread thread
         2: .line 235
            new org.jruby.RubyRegexp$SearchMatchTask
            dup
            aload 5 /* thread */
            iload 2 /* start */
            iload 3 /* range */
            iload 4 /* option */
            iconst_0
            invokespecial org.jruby.RubyRegexp$SearchMatchTask.<init>:(Lorg/jruby/RubyThread;IIIZ)V
            astore 6 /* task */
        start local 6 // org.jruby.RubyRegexp$SearchMatchTask task
         3: .line 236
            aload 5 /* thread */
            aload 0 /* context */
            aload 1 /* matcher */
            aload 6 /* task */
            invokevirtual org.jruby.RubyThread.executeTask:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;Lorg/jruby/RubyThread$Task;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
         4: ireturn
        end local 6 // org.jruby.RubyRegexp$SearchMatchTask task
        end local 5 // org.jruby.RubyThread thread
         5: .line 237
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
            pop
         6: .line 238
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "Regexp Interrupted"
            invokevirtual org.jruby.Ruby.newInterruptedRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 4 // int option
        end local 3 // int range
        end local 2 // int start
        end local 1 // org.joni.Matcher matcher
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0  context  Lorg/jruby/runtime/ThreadContext;
            0    7     1  matcher  Lorg/joni/Matcher;
            0    7     2    start  I
            0    7     3    range  I
            0    7     4   option  I
            2    5     5   thread  Lorg/jruby/RubyThread;
            3    5     6     task  Lorg/jruby/RubyRegexp$SearchMatchTask;
      Exception table:
        from    to  target  type
           1     4       5  Class java.lang.InterruptedException
    MethodParameters:
         Name  Flags
      context  
      matcher  
      start    
      range    
      option   

  public static int matcherMatch(org.jruby.runtime.ThreadContext, org.joni.Matcher, int, int, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/joni/Matcher;III)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=7, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.joni.Matcher matcher
        start local 2 // int start
        start local 3 // int range
        start local 4 // int option
         0: .line 243
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getInstanceConfig:()Lorg/jruby/RubyInstanceConfig;
            invokevirtual org.jruby.RubyInstanceConfig.isInterruptibleRegexps:()Z
            ifne 1
            aload 1 /* matcher */
            iload 2 /* start */
            iload 3 /* range */
            iload 4 /* option */
            invokevirtual org.joni.Matcher.match:(III)I
            ireturn
         1: .line 246
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getThread:()Lorg/jruby/RubyThread;
            astore 5 /* thread */
        start local 5 // org.jruby.RubyThread thread
         2: .line 247
            new org.jruby.RubyRegexp$SearchMatchTask
            dup
            aload 5 /* thread */
            iload 2 /* start */
            iload 3 /* range */
            iload 4 /* option */
            iconst_1
            invokespecial org.jruby.RubyRegexp$SearchMatchTask.<init>:(Lorg/jruby/RubyThread;IIIZ)V
            astore 6 /* task */
        start local 6 // org.jruby.RubyRegexp$SearchMatchTask task
         3: .line 248
            aload 5 /* thread */
            aload 0 /* context */
            aload 1 /* matcher */
            aload 6 /* task */
            invokevirtual org.jruby.RubyThread.executeTask:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;Lorg/jruby/RubyThread$Task;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
         4: ireturn
        end local 6 // org.jruby.RubyRegexp$SearchMatchTask task
        end local 5 // org.jruby.RubyThread thread
         5: .line 249
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
            pop
         6: .line 250
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "Regexp Interrupted"
            invokevirtual org.jruby.Ruby.newInterruptedRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 4 // int option
        end local 3 // int range
        end local 2 // int start
        end local 1 // org.joni.Matcher matcher
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0  context  Lorg/jruby/runtime/ThreadContext;
            0    7     1  matcher  Lorg/joni/Matcher;
            0    7     2    start  I
            0    7     3    range  I
            0    7     4   option  I
            2    5     5   thread  Lorg/jruby/RubyThread;
            3    5     6     task  Lorg/jruby/RubyRegexp$SearchMatchTask;
      Exception table:
        from    to  target  type
           1     4       5  Class java.lang.InterruptedException
    MethodParameters:
         Name  Flags
      context  
      matcher  
      start    
      range    
      option   

  public static int matcherSearch(org.jruby.Ruby, org.joni.Matcher, int, int, int);
    descriptor: (Lorg/jruby/Ruby;Lorg/joni/Matcher;III)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.joni.Matcher matcher
        start local 2 // int start
        start local 3 // int range
        start local 4 // int option
         0: .line 257
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 1 /* matcher */
            iload 2 /* start */
            iload 3 /* range */
            iload 4 /* option */
            invokestatic org.jruby.RubyRegexp.matcherSearch:(Lorg/jruby/runtime/ThreadContext;Lorg/joni/Matcher;III)I
            ireturn
        end local 4 // int option
        end local 3 // int range
        end local 2 // int start
        end local 1 // org.joni.Matcher matcher
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1  matcher  Lorg/joni/Matcher;
            0    1     2    start  I
            0    1     3    range  I
            0    1     4   option  I
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      runtime  
      matcher  
      start    
      range    
      option   

  public static int matcherMatch(org.jruby.Ruby, org.joni.Matcher, int, int, int);
    descriptor: (Lorg/jruby/Ruby;Lorg/joni/Matcher;III)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=8, args_size=5
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.joni.Matcher matcher
        start local 2 // int start
        start local 3 // int range
        start local 4 // int option
         0: .line 263
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            astore 5 /* context */
        start local 5 // org.jruby.runtime.ThreadContext context
         1: .line 264
            aload 5 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getThread:()Lorg/jruby/RubyThread;
            astore 6 /* thread */
        start local 6 // org.jruby.RubyThread thread
         2: .line 265
            new org.jruby.RubyRegexp$SearchMatchTask
            dup
            aload 6 /* thread */
            iload 2 /* start */
            iload 3 /* range */
            iload 4 /* option */
            iconst_1
            invokespecial org.jruby.RubyRegexp$SearchMatchTask.<init>:(Lorg/jruby/RubyThread;IIIZ)V
            astore 7 /* task */
        start local 7 // org.jruby.RubyRegexp$SearchMatchTask task
         3: .line 266
            aload 6 /* thread */
            aload 5 /* context */
            aload 1 /* matcher */
            aload 7 /* task */
            invokevirtual org.jruby.RubyThread.executeTask:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;Lorg/jruby/RubyThread$Task;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
         4: ireturn
        end local 7 // org.jruby.RubyRegexp$SearchMatchTask task
        end local 6 // org.jruby.RubyThread thread
        end local 5 // org.jruby.runtime.ThreadContext context
         5: .line 267
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
            pop
         6: .line 268
            aload 0 /* runtime */
            ldc "Regexp Interrupted"
            invokevirtual org.jruby.Ruby.newInterruptedRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 4 // int option
        end local 3 // int range
        end local 2 // int start
        end local 1 // org.joni.Matcher matcher
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0  runtime  Lorg/jruby/Ruby;
            0    7     1  matcher  Lorg/joni/Matcher;
            0    7     2    start  I
            0    7     3    range  I
            0    7     4   option  I
            1    5     5  context  Lorg/jruby/runtime/ThreadContext;
            2    5     6   thread  Lorg/jruby/RubyThread;
            3    5     7     task  Lorg/jruby/RubyRegexp$SearchMatchTask;
      Exception table:
        from    to  target  type
           0     4       5  Class java.lang.InterruptedException
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      runtime  
      matcher  
      start    
      range    
      option   

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

  private void <init>(org.jruby.Ruby, org.jruby.RubyClass);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.RubyClass klass
         0: .line 308
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* klass */
            invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
         1: .line 86
            aload 0 /* this */
            getstatic org.jruby.util.ByteList.EMPTY_BYTELIST:Lorg/jruby/util/ByteList;
            putfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
         2: .line 309
            aload 0 /* this */
            new org.jruby.util.RegexpOptions
            dup
            invokespecial org.jruby.util.RegexpOptions.<init>:()V
            putfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
         3: .line 310
            return
        end local 2 // org.jruby.RubyClass klass
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyRegexp;
            0    4     1  runtime  Lorg/jruby/Ruby;
            0    4     2    klass  Lorg/jruby/RubyClass;
    MethodParameters:
         Name  Flags
      runtime  
      klass    

  void <init>(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.Ruby runtime
         0: .line 315
            aload 0 /* this */
            aload 1 /* runtime */
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getRegexp:()Lorg/jruby/RubyClass;
            invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
         1: .line 86
            aload 0 /* this */
            getstatic org.jruby.util.ByteList.EMPTY_BYTELIST:Lorg/jruby/util/ByteList;
            putfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
         2: .line 316
            aload 0 /* this */
            new org.jruby.util.RegexpOptions
            dup
            invokespecial org.jruby.util.RegexpOptions.<init>:()V
            putfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
         3: .line 317
            return
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyRegexp;
            0    4     1  runtime  Lorg/jruby/Ruby;
    MethodParameters:
         Name  Flags
      runtime  

  public void <init>(org.jruby.Ruby, org.joni.Regex, org.jruby.util.ByteList, org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/Ruby;Lorg/joni/Regex;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.joni.Regex pattern
        start local 3 // org.jruby.util.ByteList str
        start local 4 // org.jruby.util.RegexpOptions options
         0: .line 320
            aload 0 /* this */
            aload 1 /* runtime */
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getRegexp:()Lorg/jruby/RubyClass;
            invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
         1: .line 86
            aload 0 /* this */
            getstatic org.jruby.util.ByteList.EMPTY_BYTELIST:Lorg/jruby/util/ByteList;
            putfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
         2: .line 321
            aload 0 /* this */
            aload 2 /* pattern */
            putfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
         3: .line 322
            aload 0 /* this */
            aload 3 /* str */
            putfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
         4: .line 323
            aload 0 /* this */
            aload 4 /* options */
            putfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
         5: .line 324
            return
        end local 4 // org.jruby.util.RegexpOptions options
        end local 3 // org.jruby.util.ByteList str
        end local 2 // org.joni.Regex pattern
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/jruby/RubyRegexp;
            0    6     1  runtime  Lorg/jruby/Ruby;
            0    6     2  pattern  Lorg/joni/Regex;
            0    6     3      str  Lorg/jruby/util/ByteList;
            0    6     4  options  Lorg/jruby/util/RegexpOptions;
    MethodParameters:
         Name  Flags
      runtime  
      pattern  
      str      
      options  

  private void <init>(org.jruby.Ruby, org.jruby.util.ByteList);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.util.ByteList str
         0: .line 327
            aload 0 /* this */
            aload 1 /* runtime */
            invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;)V
         1: .line 328
            getstatic org.jruby.RubyRegexp.$assertionsDisabled:Z
            ifne 2
            aload 2 /* str */
            ifnonnull 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 329
      StackMap locals: org.jruby.RubyRegexp org.jruby.Ruby org.jruby.util.ByteList
      StackMap stack:
            aload 0 /* this */
            aload 2 /* str */
            putfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
         3: .line 330
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* str */
            aload 2 /* str */
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            getstatic org.jruby.util.RegexpOptions.NULL_OPTIONS:Lorg/jruby/util/RegexpOptions;
            invokestatic org.jruby.RubyRegexp.getRegexpFromCache:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/joni/Regex;
            putfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
         4: .line 331
            return
        end local 2 // org.jruby.util.ByteList str
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/RubyRegexp;
            0    5     1  runtime  Lorg/jruby/Ruby;
            0    5     2      str  Lorg/jruby/util/ByteList;
    MethodParameters:
         Name  Flags
      runtime  
      str      

  private void <init>(org.jruby.Ruby, org.jruby.util.ByteList, org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.util.ByteList str
        start local 3 // org.jruby.util.RegexpOptions options
         0: .line 334
            aload 0 /* this */
            aload 1 /* runtime */
            invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;)V
         1: .line 335
            getstatic org.jruby.RubyRegexp.$assertionsDisabled:Z
            ifne 2
            aload 2 /* str */
            ifnonnull 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 337
      StackMap locals: org.jruby.RubyRegexp org.jruby.Ruby org.jruby.util.ByteList org.jruby.util.RegexpOptions
      StackMap stack:
            aload 0 /* this */
            aload 2 /* str */
            aload 2 /* str */
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            aload 3 /* options */
            invokevirtual org.jruby.RubyRegexp.regexpInitialize:(Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            pop
         3: .line 338
            return
        end local 3 // org.jruby.util.RegexpOptions options
        end local 2 // org.jruby.util.ByteList str
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyRegexp;
            0    4     1  runtime  Lorg/jruby/Ruby;
            0    4     2      str  Lorg/jruby/util/ByteList;
            0    4     3  options  Lorg/jruby/util/RegexpOptions;
    MethodParameters:
         Name  Flags
      runtime  
      str      
      options  

  public static org.jruby.RubyRegexp newRegexp(org.jruby.Ruby, java.lang.String, org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.String pattern
        start local 2 // org.jruby.util.RegexpOptions options
         0: .line 342
            aload 0 /* runtime */
            aload 1 /* pattern */
            invokestatic org.jruby.util.ByteList.create:(Ljava/lang/CharSequence;)Lorg/jruby/util/ByteList;
            aload 2 /* options */
            invokestatic org.jruby.RubyRegexp.newRegexp:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            areturn
        end local 2 // org.jruby.util.RegexpOptions options
        end local 1 // java.lang.String pattern
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1  pattern  Ljava/lang/String;
            0    1     2  options  Lorg/jruby/util/RegexpOptions;
    MethodParameters:
         Name  Flags
      runtime  
      pattern  
      options  

  public static org.jruby.RubyRegexp newRegexp(org.jruby.Ruby, org.jruby.util.ByteList, int);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;I)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.util.ByteList pattern
        start local 2 // int options
         0: .line 347
            aload 0 /* runtime */
            aload 1 /* pattern */
            iload 2 /* options */
            invokestatic org.jruby.util.RegexpOptions.fromEmbeddedOptions:(I)Lorg/jruby/util/RegexpOptions;
            invokestatic org.jruby.RubyRegexp.newRegexp:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            areturn
        end local 2 // int options
        end local 1 // org.jruby.util.ByteList pattern
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1  pattern  Lorg/jruby/util/ByteList;
            0    1     2  options  I
    MethodParameters:
         Name  Flags
      runtime  
      pattern  
      options  

  public static org.jruby.RubyRegexp newRegexp(org.jruby.Ruby, org.jruby.util.ByteList, org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.util.ByteList pattern
        start local 2 // org.jruby.util.RegexpOptions options
         0: .line 353
            new org.jruby.RubyRegexp
            dup
            aload 0 /* runtime */
            aload 1 /* pattern */
            aload 2 /* options */
            invokevirtual org.jruby.util.RegexpOptions.clone:()Lorg/jruby/util/RegexpOptions;
            invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)V
         1: areturn
         2: .line 354
      StackMap locals:
      StackMap stack: org.jruby.exceptions.RaiseException
            astore 3 /* re */
        start local 3 // org.jruby.exceptions.RaiseException re
         3: .line 355
            aload 0 /* runtime */
            aload 3 /* re */
            invokevirtual org.jruby.exceptions.RaiseException.getMessage:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newSyntaxError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 3 // org.jruby.exceptions.RaiseException re
        end local 2 // org.jruby.util.RegexpOptions options
        end local 1 // org.jruby.util.ByteList pattern
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0  runtime  Lorg/jruby/Ruby;
            0    4     1  pattern  Lorg/jruby/util/ByteList;
            0    4     2  options  Lorg/jruby/util/RegexpOptions;
            3    4     3       re  Lorg/jruby/exceptions/RaiseException;
      Exception table:
        from    to  target  type
           0     1       2  Class org.jruby.exceptions.RaiseException
    MethodParameters:
         Name  Flags
      runtime  
      pattern  
      options  

  public static org.jruby.RubyRegexp newRegexpParser(org.jruby.Ruby, org.jruby.util.ByteList, org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.util.ByteList pattern
        start local 2 // org.jruby.util.RegexpOptions options
         0: .line 365
            new org.jruby.RubyRegexp
            dup
            aload 0 /* runtime */
            aload 1 /* pattern */
            aload 2 /* options */
            invokevirtual org.jruby.util.RegexpOptions.clone:()Lorg/jruby/util/RegexpOptions;
            invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)V
            areturn
        end local 2 // org.jruby.util.RegexpOptions options
        end local 1 // org.jruby.util.ByteList pattern
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1  pattern  Lorg/jruby/util/ByteList;
            0    1     2  options  Lorg/jruby/util/RegexpOptions;
    MethodParameters:
         Name  Flags
      runtime  
      pattern  
      options  

  public static org.jruby.RubyRegexp newDRegexp(org.jruby.Ruby, org.jruby.RubyString, org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.RubyString pattern
        start local 2 // org.jruby.util.RegexpOptions options
         0: .line 371
            new org.jruby.RubyRegexp
            dup
            aload 0 /* runtime */
            aload 1 /* pattern */
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            aload 2 /* options */
            invokevirtual org.jruby.util.RegexpOptions.clone:()Lorg/jruby/util/RegexpOptions;
            invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)V
         1: areturn
         2: .line 372
      StackMap locals:
      StackMap stack: org.jruby.exceptions.RaiseException
            astore 3 /* re */
        start local 3 // org.jruby.exceptions.RaiseException re
         3: .line 373
            aload 0 /* runtime */
            aload 3 /* re */
            invokevirtual org.jruby.exceptions.RaiseException.getMessage:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 3 // org.jruby.exceptions.RaiseException re
        end local 2 // org.jruby.util.RegexpOptions options
        end local 1 // org.jruby.RubyString pattern
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0  runtime  Lorg/jruby/Ruby;
            0    4     1  pattern  Lorg/jruby/RubyString;
            0    4     2  options  Lorg/jruby/util/RegexpOptions;
            3    4     3       re  Lorg/jruby/exceptions/RaiseException;
      Exception table:
        from    to  target  type
           0     1       2  Class org.jruby.exceptions.RaiseException
    MethodParameters:
         Name  Flags
      runtime  
      pattern  
      options  

  public static org.jruby.RubyRegexp newDRegexp(org.jruby.Ruby, org.jruby.RubyString, int);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;I)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.RubyString pattern
        start local 2 // int joniOptions
         0: .line 380
            iload 2 /* joniOptions */
            invokestatic org.jruby.util.RegexpOptions.fromJoniOptions:(I)Lorg/jruby/util/RegexpOptions;
            astore 3 /* options */
        start local 3 // org.jruby.util.RegexpOptions options
         1: .line 381
            new org.jruby.RubyRegexp
            dup
            aload 0 /* runtime */
            aload 1 /* pattern */
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            aload 3 /* options */
            invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)V
         2: areturn
        end local 3 // org.jruby.util.RegexpOptions options
         3: .line 382
      StackMap locals:
      StackMap stack: org.jruby.exceptions.RaiseException
            astore 3 /* re */
        start local 3 // org.jruby.exceptions.RaiseException re
         4: .line 383
            aload 0 /* runtime */
            aload 3 /* re */
            invokevirtual org.jruby.exceptions.RaiseException.getMessage:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 3 // org.jruby.exceptions.RaiseException re
        end local 2 // int joniOptions
        end local 1 // org.jruby.RubyString pattern
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0      runtime  Lorg/jruby/Ruby;
            0    5     1      pattern  Lorg/jruby/RubyString;
            0    5     2  joniOptions  I
            1    3     3      options  Lorg/jruby/util/RegexpOptions;
            4    5     3           re  Lorg/jruby/exceptions/RaiseException;
      Exception table:
        from    to  target  type
           0     2       3  Class org.jruby.exceptions.RaiseException
    MethodParameters:
             Name  Flags
      runtime      
      pattern      
      joniOptions  

  public static org.jruby.RubyRegexp newRegexp(org.jruby.Ruby, org.jruby.util.ByteList);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.util.ByteList pattern
         0: .line 388
            new org.jruby.RubyRegexp
            dup
            aload 0 /* runtime */
            aload 1 /* pattern */
            invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)V
            areturn
        end local 1 // org.jruby.util.ByteList pattern
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1  pattern  Lorg/jruby/util/ByteList;
    MethodParameters:
         Name  Flags
      runtime  
      pattern  

  static org.jruby.RubyRegexp newRegexp(org.jruby.Ruby, org.jruby.util.ByteList, org.joni.Regex);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/joni/Regex;)Lorg/jruby/RubyRegexp;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.util.ByteList str
        start local 2 // org.joni.Regex pattern
         0: .line 392
            new org.jruby.RubyRegexp
            dup
            aload 0 /* runtime */
            invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;)V
            astore 3 /* regexp */
        start local 3 // org.jruby.RubyRegexp regexp
         1: .line 393
            getstatic org.jruby.RubyRegexp.$assertionsDisabled:Z
            ifne 2
            aload 1 /* str */
            ifnonnull 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 394
      StackMap locals: org.jruby.RubyRegexp
      StackMap stack:
            aload 3 /* regexp */
            aload 1 /* str */
            putfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
         3: .line 395
            aload 3 /* regexp */
            aload 2 /* pattern */
            invokevirtual org.joni.Regex.getOptions:()I
            invokestatic org.jruby.util.RegexpOptions.fromJoniOptions:(I)Lorg/jruby/util/RegexpOptions;
            putfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
         4: .line 396
            aload 3 /* regexp */
            aload 2 /* pattern */
            putfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
         5: .line 397
            aload 3 /* regexp */
            areturn
        end local 3 // org.jruby.RubyRegexp regexp
        end local 2 // org.joni.Regex pattern
        end local 1 // org.jruby.util.ByteList str
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0  runtime  Lorg/jruby/Ruby;
            0    6     1      str  Lorg/jruby/util/ByteList;
            0    6     2  pattern  Lorg/joni/Regex;
            1    6     3   regexp  Lorg/jruby/RubyRegexp;
    MethodParameters:
         Name  Flags
      runtime  
      str      
      pattern  

  static org.jruby.RubyRegexp newDummyRegexp(org.jruby.Ruby, org.joni.Regex);
    descriptor: (Lorg/jruby/Ruby;Lorg/joni/Regex;)Lorg/jruby/RubyRegexp;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.joni.Regex regex
         0: .line 402
            new org.jruby.RubyRegexp
            dup
            aload 0 /* runtime */
            invokespecial org.jruby.RubyRegexp.<init>:(Lorg/jruby/Ruby;)V
            astore 2 /* regexp */
        start local 2 // org.jruby.RubyRegexp regexp
         1: .line 403
            aload 2 /* regexp */
            aload 1 /* regex */
            putfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
         2: .line 404
            aload 2 /* regexp */
            getstatic org.jruby.util.ByteList.EMPTY_BYTELIST:Lorg/jruby/util/ByteList;
            putfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
         3: .line 405
            aload 2 /* regexp */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            iconst_1
            invokevirtual org.jruby.util.RegexpOptions.setFixed:(Z)V
         4: .line 406
            aload 2 /* regexp */
            areturn
        end local 2 // org.jruby.RubyRegexp regexp
        end local 1 // org.joni.Regex regex
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0  runtime  Lorg/jruby/Ruby;
            0    5     1    regex  Lorg/joni/Regex;
            1    5     2   regexp  Lorg/jruby/RubyRegexp;
    MethodParameters:
         Name  Flags
      runtime  
      regex    

  public static org.jruby.RubyRegexp newRegexpFromStr(org.jruby.Ruby, org.jruby.RubyString, int);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;I)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.RubyString s
        start local 2 // int options
         0: .line 411
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getRegexp:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.allocate:()Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyRegexp
            astore 3 /* re */
        start local 3 // org.jruby.RubyRegexp re
         1: .line 412
            aload 3 /* re */
            aload 1 /* s */
            iload 2 /* options */
            invokestatic org.jruby.util.RegexpOptions.fromJoniOptions:(I)Lorg/jruby/util/RegexpOptions;
            invokevirtual org.jruby.RubyRegexp.regexpInitializeString:(Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            pop
         2: .line 413
            aload 3 /* re */
            areturn
        end local 3 // org.jruby.RubyRegexp re
        end local 2 // int options
        end local 1 // org.jruby.RubyString s
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  runtime  Lorg/jruby/Ruby;
            0    3     1        s  Lorg/jruby/RubyString;
            0    3     2  options  I
            1    3     3       re  Lorg/jruby/RubyRegexp;
    MethodParameters:
         Name  Flags
      runtime  
      s        
      options  

  public final org.jruby.util.RegexpOptions getOptions();
    descriptor: ()Lorg/jruby/util/RegexpOptions;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 419
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.check:()V
         1: .line 420
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            areturn
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyRegexp;

  public final org.joni.Regex getPattern();
    descriptor: ()Lorg/joni/Regex;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 424
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.check:()V
         1: .line 425
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            areturn
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyRegexp;

  private static void encodingMatchError(org.jruby.Ruby, org.joni.Regex, org.jcodings.Encoding);
    descriptor: (Lorg/jruby/Ruby;Lorg/joni/Regex;Lorg/jcodings/Encoding;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.joni.Regex pattern
        start local 2 // org.jcodings.Encoding strEnc
         0: .line 429
            aload 0 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "incompatible encoding regexp match ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         1: .line 430
            aload 1 /* pattern */
            invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " regexp with "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* strEnc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " string)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         2: .line 429
            invokevirtual org.jruby.Ruby.newEncodingCompatibilityError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // org.jcodings.Encoding strEnc
        end local 1 // org.joni.Regex pattern
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  runtime  Lorg/jruby/Ruby;
            0    3     1  pattern  Lorg/joni/Regex;
            0    3     2   strEnc  Lorg/jcodings/Encoding;
    MethodParameters:
         Name  Flags
      runtime  
      pattern  
      strEnc   

  private org.jcodings.Encoding prepareEncoding(org.jruby.RubyString, boolean);
    descriptor: (Lorg/jruby/RubyString;Z)Lorg/jcodings/Encoding;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.RubyString str
        start local 2 // boolean warn
         0: .line 434
            aload 1 /* str */
            invokevirtual org.jruby.RubyString.getEncoding:()Lorg/jcodings/Encoding;
            astore 3 /* enc */
        start local 3 // org.jcodings.Encoding enc
         1: .line 435
            aload 1 /* str */
            invokevirtual org.jruby.RubyString.scanForCodeRange:()I
            istore 4 /* cr */
        start local 4 // int cr
         2: .line 436
            iload 4 /* cr */
            bipush 48
            if_icmpne 4
         3: .line 437
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.getRuntime:()Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            ldc "invalid byte sequence in "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* enc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         4: .line 439
      StackMap locals: org.jcodings.Encoding int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.check:()V
         5: .line 440
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
            astore 5 /* patternEnc */
        start local 5 // org.jcodings.Encoding patternEnc
         6: .line 441
            aload 5 /* patternEnc */
            aload 3 /* enc */
            if_acmpeq 19
         7: .line 442
            iload 4 /* cr */
            bipush 16
            if_icmpne 10
            aload 5 /* patternEnc */
            getstatic org.jcodings.specific.USASCIIEncoding.INSTANCE:Lorg/jcodings/specific/USASCIIEncoding;
            if_acmpne 10
         8: .line 443
            aload 5 /* patternEnc */
            astore 3 /* enc */
         9: .line 444
            goto 19
      StackMap locals: org.jcodings.Encoding
      StackMap stack:
        10: aload 3 /* enc */
            invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
            ifne 13
        11: .line 445
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.getRuntime:()Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            aload 3 /* enc */
            invokestatic org.jruby.RubyRegexp.encodingMatchError:(Lorg/jruby/Ruby;Lorg/joni/Regex;Lorg/jcodings/Encoding;)V
        12: .line 446
            goto 19
      StackMap locals:
      StackMap stack:
        13: aload 0 /* this */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            invokevirtual org.jruby.util.RegexpOptions.isFixed:()Z
            ifeq 19
        14: .line 447
            aload 3 /* enc */
            aload 5 /* patternEnc */
            if_acmpeq 18
        15: .line 448
            aload 5 /* patternEnc */
            invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
            ifeq 17
        16: .line 449
            iload 4 /* cr */
            bipush 16
            if_icmpeq 18
      StackMap locals:
      StackMap stack:
        17: aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.getRuntime:()Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            aload 3 /* enc */
            invokestatic org.jruby.RubyRegexp.encodingMatchError:(Lorg/jruby/Ruby;Lorg/joni/Regex;Lorg/jcodings/Encoding;)V
        18: .line 450
      StackMap locals:
      StackMap stack:
            aload 5 /* patternEnc */
            astore 3 /* enc */
        19: .line 452
      StackMap locals:
      StackMap stack:
            iload 2 /* warn */
            ifeq 21
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.isEncodingNone:()Z
            ifeq 21
            aload 3 /* enc */
            getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
            if_acmpeq 21
            iload 4 /* cr */
            bipush 16
            if_icmpeq 21
        20: .line 453
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.REGEXP_MATCH_AGAINST_STRING:Lorg/jruby/common/IRubyWarnings$ID;
            new java.lang.StringBuilder
            dup
            ldc "historical binary regexp match /.../n against "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* enc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " string"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
        21: .line 455
      StackMap locals:
      StackMap stack:
            aload 3 /* enc */
            areturn
        end local 5 // org.jcodings.Encoding patternEnc
        end local 4 // int cr
        end local 3 // org.jcodings.Encoding enc
        end local 2 // boolean warn
        end local 1 // org.jruby.RubyString str
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   22     0        this  Lorg/jruby/RubyRegexp;
            0   22     1         str  Lorg/jruby/RubyString;
            0   22     2        warn  Z
            1   22     3         enc  Lorg/jcodings/Encoding;
            2   22     4          cr  I
            6   22     5  patternEnc  Lorg/jcodings/Encoding;
    MethodParameters:
      Name  Flags
      str   
      warn  

  public final org.joni.Regex preparePattern(org.jruby.RubyString);
    descriptor: (Lorg/jruby/RubyString;)Lorg/joni/Regex;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.RubyString str
         0: .line 460
            aload 0 /* this */
            aload 1 /* str */
            iconst_1
            invokevirtual org.jruby.RubyRegexp.prepareEncoding:(Lorg/jruby/RubyString;Z)Lorg/jcodings/Encoding;
            astore 2 /* enc */
        start local 2 // org.jcodings.Encoding enc
         1: .line 461
            aload 2 /* enc */
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
            if_acmpne 2
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            areturn
         2: .line 462
      StackMap locals: org.jcodings.Encoding
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            aload 2 /* enc */
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            getstatic org.jruby.util.RegexpSupport$ErrorMode.PREPROCESS:Lorg/jruby/util/RegexpSupport$ErrorMode;
            invokestatic org.jruby.RubyRegexp.getPreprocessedRegexpFromCache:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;Lorg/jruby/util/RegexpSupport$ErrorMode;)Lorg/joni/Regex;
            areturn
        end local 2 // org.jcodings.Encoding enc
        end local 1 // org.jruby.RubyString str
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/RubyRegexp;
            0    3     1   str  Lorg/jruby/RubyString;
            1    3     2   enc  Lorg/jcodings/Encoding;
    MethodParameters:
      Name  Flags
      str   

  private static void preprocessLight(org.jruby.Ruby, org.jruby.util.ByteList, org.jcodings.Encoding, org.jcodings.Encoding[], org.jruby.util.RegexpSupport$ErrorMode);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpSupport$ErrorMode;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=6, args_size=5
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.util.ByteList str
        start local 2 // org.jcodings.Encoding enc
        start local 3 // org.jcodings.Encoding[] fixedEnc
        start local 4 // org.jruby.util.RegexpSupport$ErrorMode mode
         0: .line 480
            aload 2 /* enc */
            invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
            ifeq 3
         1: .line 481
            aload 3 /* fixedEnc */
            iconst_0
            aconst_null
            aastore
         2: .line 482
            goto 4
         3: .line 483
      StackMap locals:
      StackMap stack:
            aload 3 /* fixedEnc */
            iconst_0
            aload 2 /* enc */
            aastore
         4: .line 486
      StackMap locals:
      StackMap stack:
            aload 0 /* runtime */
            aconst_null
            aload 1 /* str */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 1 /* str */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            aload 1 /* str */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            aload 1 /* str */
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            iadd
            aload 2 /* enc */
            aload 3 /* fixedEnc */
            aload 1 /* str */
            aload 4 /* mode */
            invokestatic org.jruby.util.RegexpSupport.unescapeNonAscii:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;[BIILorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpSupport$ErrorMode;)Z
            istore 5 /* hasProperty */
        start local 5 // boolean hasProperty
         5: .line 487
            iload 5 /* hasProperty */
            ifeq 6
            aload 3 /* fixedEnc */
            iconst_0
            aaload
            ifnonnull 6
            aload 3 /* fixedEnc */
            iconst_0
            aload 2 /* enc */
            aastore
         6: .line 488
      StackMap locals: int
      StackMap stack:
            return
        end local 5 // boolean hasProperty
        end local 4 // org.jruby.util.RegexpSupport$ErrorMode mode
        end local 3 // org.jcodings.Encoding[] fixedEnc
        end local 2 // org.jcodings.Encoding enc
        end local 1 // org.jruby.util.ByteList str
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0      runtime  Lorg/jruby/Ruby;
            0    7     1          str  Lorg/jruby/util/ByteList;
            0    7     2          enc  Lorg/jcodings/Encoding;
            0    7     3     fixedEnc  [Lorg/jcodings/Encoding;
            0    7     4         mode  Lorg/jruby/util/RegexpSupport$ErrorMode;
            5    7     5  hasProperty  Z
    MethodParameters:
          Name  Flags
      runtime   
      str       
      enc       
      fixedEnc  
      mode      

  public static void preprocessCheck(org.jruby.Ruby, org.jruby.util.ByteList);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.util.ByteList bytes
         0: .line 491
            aload 0 /* runtime */
            aload 1 /* bytes */
            aload 1 /* bytes */
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            iconst_1
            anewarray org.jcodings.Encoding
            getstatic org.jruby.util.RegexpSupport$ErrorMode.RAISE:Lorg/jruby/util/RegexpSupport$ErrorMode;
            invokestatic org.jruby.util.RegexpSupport.preprocess:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpSupport$ErrorMode;)Lorg/jruby/util/ByteList;
            pop
         1: .line 492
            return
        end local 1 // org.jruby.util.ByteList bytes
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0  runtime  Lorg/jruby/Ruby;
            0    2     1    bytes  Lorg/jruby/util/ByteList;
    MethodParameters:
         Name  Flags
      runtime  
      bytes    

  public static org.jruby.RubyString preprocessDRegexp(org.jruby.Ruby, org.jruby.RubyString[], int);
    descriptor: (Lorg/jruby/Ruby;[Lorg/jruby/RubyString;I)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.RubyString[] strings
        start local 2 // int embeddedOptions
         0: .line 496
            aload 0 /* runtime */
            aload 1 /* strings */
            iload 2 /* embeddedOptions */
            invokestatic org.jruby.util.RegexpOptions.fromEmbeddedOptions:(I)Lorg/jruby/util/RegexpOptions;
            invokestatic org.jruby.RubyRegexp.preprocessDRegexp:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
            areturn
        end local 2 // int embeddedOptions
        end local 1 // org.jruby.RubyString[] strings
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    1     0          runtime  Lorg/jruby/Ruby;
            0    1     1          strings  [Lorg/jruby/RubyString;
            0    1     2  embeddedOptions  I
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                 Name  Flags
      runtime          
      strings          
      embeddedOptions  

  public static org.jruby.RubyString preprocessDRegexp(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject[], org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] strings
        start local 2 // org.jruby.util.RegexpOptions options
         0: .line 501
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 2 /* options */
            aload 1 /* strings */
            invokestatic org.jruby.RubyRegexp.preprocessDRegexp:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/RegexpOptions;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            areturn
        end local 2 // org.jruby.util.RegexpOptions options
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] strings
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1  strings  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2  options  Lorg/jruby/util/RegexpOptions;
    MethodParameters:
         Name  Flags
      runtime  
      strings  
      options  

  public static org.jruby.RubyString preprocessDRegexp(org.jruby.runtime.ThreadContext, org.jruby.util.RegexpOptions, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/RegexpOptions;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
    flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
    Code:
      stack=5, locals=7, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.util.RegexpOptions options
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 506
            aconst_null
            astore 3 /* string */
        start local 3 // org.jruby.RubyString string
         1: .line 507
            aconst_null
            astore 4 /* regexpEnc */
        start local 4 // org.jcodings.Encoding regexpEnc
         2: .line 509
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 10
         4: .line 510
      StackMap locals: org.jruby.RubyString org.jcodings.Encoding int
      StackMap stack:
            aload 2 /* args */
            iload 5 /* i */
            aaload
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            astore 6 /* str */
        start local 6 // org.jruby.RubyString str
         5: .line 511
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* options */
            aload 4 /* regexpEnc */
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
            aload 6 /* str */
            invokestatic org.jruby.RubyRegexp.processDRegexpElement:(Lorg/jruby/Ruby;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/RubyString;)Lorg/jcodings/Encoding;
            astore 4 /* regexpEnc */
         6: .line 512
            aload 3 /* string */
            ifnonnull 7
            aload 6 /* str */
            invokevirtual org.jruby.RubyString.dup:()Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyString
            goto 8
      StackMap locals: org.jruby.RubyString
      StackMap stack:
         7: aload 3 /* string */
            aload 6 /* str */
            invokevirtual org.jruby.RubyString.append19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
      StackMap locals:
      StackMap stack: org.jruby.RubyString
         8: astore 3 /* string */
        end local 6 // org.jruby.RubyString str
         9: .line 509
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 5 /* i */
            aload 2 /* args */
            arraylength
            if_icmplt 4
        end local 5 // int i
        11: .line 515
            aload 4 /* regexpEnc */
            ifnull 12
            aload 3 /* string */
            aload 4 /* regexpEnc */
            invokevirtual org.jruby.RubyString.setEncoding:(Lorg/jcodings/Encoding;)V
        12: .line 517
      StackMap locals:
      StackMap stack:
            aload 3 /* string */
            areturn
        end local 4 // org.jcodings.Encoding regexpEnc
        end local 3 // org.jruby.RubyString string
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.util.RegexpOptions options
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   13     0    context  Lorg/jruby/runtime/ThreadContext;
            0   13     1    options  Lorg/jruby/util/RegexpOptions;
            0   13     2       args  [Lorg/jruby/runtime/builtin/IRubyObject;
            1   13     3     string  Lorg/jruby/RubyString;
            2   13     4  regexpEnc  Lorg/jcodings/Encoding;
            3   11     5          i  I
            5    9     6        str  Lorg/jruby/RubyString;
    MethodParameters:
         Name  Flags
      context  
      options  
      args     

  public static org.jruby.RubyString preprocessDRegexp(org.jruby.runtime.ThreadContext, org.jruby.util.RegexpOptions, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/RegexpOptions;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.util.RegexpOptions options
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg0
         0: .line 521
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aconst_null
            aload 2 /* arg0 */
            aload 1 /* options */
            aconst_null
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
            invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 1 // org.jruby.util.RegexpOptions options
        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  options  Lorg/jruby/util/RegexpOptions;
            0    1     2     arg0  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      options  
      arg0     

  public static org.jruby.RubyString preprocessDRegexp(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 2 // org.jruby.util.RegexpOptions options
         0: .line 526
            aload 0 /* runtime */
            aconst_null
            aload 1 /* arg0 */
            aload 2 /* options */
            aconst_null
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
            invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            areturn
        end local 2 // org.jruby.util.RegexpOptions options
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1     arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2  options  Lorg/jruby/util/RegexpOptions;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      runtime  
      arg0     
      options  

  public static org.jruby.RubyString preprocessDRegexp(org.jruby.runtime.ThreadContext, org.jruby.util.RegexpOptions, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/RegexpOptions;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.util.RegexpOptions options
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 3 // org.jruby.runtime.builtin.IRubyObject arg1
         0: .line 530
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aconst_null
            aload 2 /* arg0 */
            aload 3 /* arg1 */
            aload 1 /* options */
            aconst_null
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
            invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 1 // org.jruby.util.RegexpOptions options
        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  options  Lorg/jruby/util/RegexpOptions;
            0    1     2     arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3     arg1  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      options  
      arg0     
      arg1     

  public static org.jruby.RubyString preprocessDRegexp(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 3 // org.jruby.util.RegexpOptions options
         0: .line 535
            aload 0 /* runtime */
            aconst_null
            aload 1 /* arg0 */
            aload 2 /* arg1 */
            aload 3 /* options */
            aconst_null
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
            invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            areturn
        end local 3 // org.jruby.util.RegexpOptions options
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1     arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2     arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3  options  Lorg/jruby/util/RegexpOptions;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      runtime  
      arg0     
      arg1     
      options  

  public static org.jruby.RubyString preprocessDRegexp(org.jruby.runtime.ThreadContext, org.jruby.util.RegexpOptions, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/RegexpOptions;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=5, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.util.RegexpOptions options
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 3 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 4 // org.jruby.runtime.builtin.IRubyObject arg2
         0: .line 539
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aconst_null
            aload 2 /* arg0 */
            aload 3 /* arg1 */
            aload 4 /* arg2 */
            aload 1 /* options */
            aconst_null
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
            invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            areturn
        end local 4 // org.jruby.runtime.builtin.IRubyObject arg2
        end local 3 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 1 // org.jruby.util.RegexpOptions options
        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  options  Lorg/jruby/util/RegexpOptions;
            0    1     2     arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3     arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     4     arg2  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      options  
      arg0     
      arg1     
      arg2     

  public static org.jruby.RubyString preprocessDRegexp(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=5, args_size=5
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 3 // org.jruby.runtime.builtin.IRubyObject arg2
        start local 4 // org.jruby.util.RegexpOptions options
         0: .line 544
            aload 0 /* runtime */
            aconst_null
            aload 1 /* arg0 */
            aload 2 /* arg1 */
            aload 3 /* arg2 */
            aload 4 /* options */
            aconst_null
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
            invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            areturn
        end local 4 // org.jruby.util.RegexpOptions options
        end local 3 // org.jruby.runtime.builtin.IRubyObject arg2
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1     arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2     arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3     arg2  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     4  options  Lorg/jruby/util/RegexpOptions;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      runtime  
      arg0     
      arg1     
      arg2     
      options  

  public static org.jruby.RubyString preprocessDRegexp(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=6, args_size=6
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 3 // org.jruby.runtime.builtin.IRubyObject arg2
        start local 4 // org.jruby.runtime.builtin.IRubyObject arg3
        start local 5 // org.jruby.util.RegexpOptions options
         0: .line 549
            aload 0 /* runtime */
            aconst_null
            aload 1 /* arg0 */
            aload 2 /* arg1 */
            aload 3 /* arg2 */
            aload 4 /* arg3 */
            aload 5 /* options */
            aconst_null
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
            invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            areturn
        end local 5 // org.jruby.util.RegexpOptions options
        end local 4 // org.jruby.runtime.builtin.IRubyObject arg3
        end local 3 // org.jruby.runtime.builtin.IRubyObject arg2
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1     arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2     arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3     arg2  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     4     arg3  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     5  options  Lorg/jruby/util/RegexpOptions;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      runtime  
      arg0     
      arg1     
      arg2     
      arg3     
      options  

  public static org.jruby.RubyString preprocessDRegexp(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=10, locals=7, args_size=7
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 3 // org.jruby.runtime.builtin.IRubyObject arg2
        start local 4 // org.jruby.runtime.builtin.IRubyObject arg3
        start local 5 // org.jruby.runtime.builtin.IRubyObject arg4
        start local 6 // org.jruby.util.RegexpOptions options
         0: .line 554
            aload 0 /* runtime */
            aconst_null
            aload 1 /* arg0 */
            aload 2 /* arg1 */
            aload 3 /* arg2 */
            aload 4 /* arg3 */
            aload 5 /* arg4 */
            aload 6 /* options */
            aconst_null
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.runtime.ThreadContext.encodingHolder:()[Lorg/jcodings/Encoding;
            invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            areturn
        end local 6 // org.jruby.util.RegexpOptions options
        end local 5 // org.jruby.runtime.builtin.IRubyObject arg4
        end local 4 // org.jruby.runtime.builtin.IRubyObject arg3
        end local 3 // org.jruby.runtime.builtin.IRubyObject arg2
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1     arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2     arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3     arg2  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     4     arg3  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     5     arg4  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     6  options  Lorg/jruby/util/RegexpOptions;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      runtime  
      arg0     
      arg1     
      arg2     
      arg3     
      arg4     
      options  

  private static org.jruby.RubyString processElementIntoResult(org.jruby.Ruby, org.jruby.RubyString, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions, org.jcodings.Encoding, org.jcodings.Encoding[]);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=11, args_size=10
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.RubyString result
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 3 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 4 // org.jruby.runtime.builtin.IRubyObject arg2
        start local 5 // org.jruby.runtime.builtin.IRubyObject arg3
        start local 6 // org.jruby.runtime.builtin.IRubyObject arg4
        start local 7 // org.jruby.util.RegexpOptions options
        start local 8 // org.jcodings.Encoding regexpEnc
        start local 9 // org.jcodings.Encoding[] fixedEnc
         0: .line 568
            aload 2 /* arg0 */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            astore 10 /* str */
        start local 10 // org.jruby.RubyString str
         1: .line 569
            aload 0 /* runtime */
            aload 7 /* options */
            aload 8 /* regexpEnc */
            aload 9 /* fixedEnc */
            aload 10 /* str */
            invokestatic org.jruby.RubyRegexp.processDRegexpElement:(Lorg/jruby/Ruby;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/RubyString;)Lorg/jcodings/Encoding;
            astore 8 /* regexpEnc */
         2: .line 570
            aload 0 /* runtime */
            aload 1 /* result */
            ifnonnull 3
            aload 10 /* str */
            aload 0 /* runtime */
            invokevirtual org.jruby.RubyString.strDup:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
            goto 4
      StackMap locals: org.jruby.Ruby org.jruby.RubyString org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.util.RegexpOptions org.jcodings.Encoding org.jcodings.Encoding[] org.jruby.RubyString
      StackMap stack: org.jruby.Ruby
         3: aload 1 /* result */
            aload 10 /* str */
            invokevirtual org.jruby.RubyString.append19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
      StackMap locals: org.jruby.Ruby org.jruby.RubyString org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.util.RegexpOptions org.jcodings.Encoding org.jcodings.Encoding[] org.jruby.RubyString
      StackMap stack: org.jruby.Ruby org.jruby.RubyString
         4: aload 3 /* arg1 */
            aload 4 /* arg2 */
            aload 5 /* arg3 */
            aload 6 /* arg4 */
            aload 7 /* options */
            aload 8 /* regexpEnc */
            aload 9 /* fixedEnc */
            invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            areturn
        end local 10 // org.jruby.RubyString str
        end local 9 // org.jcodings.Encoding[] fixedEnc
        end local 8 // org.jcodings.Encoding regexpEnc
        end local 7 // org.jruby.util.RegexpOptions options
        end local 6 // org.jruby.runtime.builtin.IRubyObject arg4
        end local 5 // org.jruby.runtime.builtin.IRubyObject arg3
        end local 4 // org.jruby.runtime.builtin.IRubyObject arg2
        end local 3 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 1 // org.jruby.RubyString result
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0    runtime  Lorg/jruby/Ruby;
            0    5     1     result  Lorg/jruby/RubyString;
            0    5     2       arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3       arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     4       arg2  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     5       arg3  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     6       arg4  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     7    options  Lorg/jruby/util/RegexpOptions;
            0    5     8  regexpEnc  Lorg/jcodings/Encoding;
            0    5     9   fixedEnc  [Lorg/jcodings/Encoding;
            1    5    10        str  Lorg/jruby/RubyString;
    MethodParameters:
           Name  Flags
      runtime    
      result     
      arg0       
      arg1       
      arg2       
      arg3       
      arg4       
      options    
      regexpEnc  
      fixedEnc   

  private static org.jruby.RubyString processElementIntoResult(org.jruby.Ruby, org.jruby.RubyString, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions, org.jcodings.Encoding, org.jcodings.Encoding[]);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=10, args_size=9
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.RubyString result
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 3 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 4 // org.jruby.runtime.builtin.IRubyObject arg2
        start local 5 // org.jruby.runtime.builtin.IRubyObject arg3
        start local 6 // org.jruby.util.RegexpOptions options
        start local 7 // org.jcodings.Encoding regexpEnc
        start local 8 // org.jcodings.Encoding[] fixedEnc
         0: .line 583
            aload 2 /* arg0 */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            astore 9 /* str */
        start local 9 // org.jruby.RubyString str
         1: .line 584
            aload 0 /* runtime */
            aload 6 /* options */
            aload 7 /* regexpEnc */
            aload 8 /* fixedEnc */
            aload 9 /* str */
            invokestatic org.jruby.RubyRegexp.processDRegexpElement:(Lorg/jruby/Ruby;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/RubyString;)Lorg/jcodings/Encoding;
            astore 7 /* regexpEnc */
         2: .line 585
            aload 0 /* runtime */
            aload 1 /* result */
            ifnonnull 3
            aload 9 /* str */
            aload 0 /* runtime */
            invokevirtual org.jruby.RubyString.strDup:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
            goto 4
      StackMap locals: org.jruby.Ruby org.jruby.RubyString org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.util.RegexpOptions org.jcodings.Encoding org.jcodings.Encoding[] org.jruby.RubyString
      StackMap stack: org.jruby.Ruby
         3: aload 1 /* result */
            aload 9 /* str */
            invokevirtual org.jruby.RubyString.append19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
      StackMap locals: org.jruby.Ruby org.jruby.RubyString org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.util.RegexpOptions org.jcodings.Encoding org.jcodings.Encoding[] org.jruby.RubyString
      StackMap stack: org.jruby.Ruby org.jruby.RubyString
         4: aload 3 /* arg1 */
            aload 4 /* arg2 */
            aload 5 /* arg3 */
            aload 6 /* options */
            aload 7 /* regexpEnc */
            aload 8 /* fixedEnc */
            invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            areturn
        end local 9 // org.jruby.RubyString str
        end local 8 // org.jcodings.Encoding[] fixedEnc
        end local 7 // org.jcodings.Encoding regexpEnc
        end local 6 // org.jruby.util.RegexpOptions options
        end local 5 // org.jruby.runtime.builtin.IRubyObject arg3
        end local 4 // org.jruby.runtime.builtin.IRubyObject arg2
        end local 3 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 1 // org.jruby.RubyString result
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0    runtime  Lorg/jruby/Ruby;
            0    5     1     result  Lorg/jruby/RubyString;
            0    5     2       arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3       arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     4       arg2  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     5       arg3  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     6    options  Lorg/jruby/util/RegexpOptions;
            0    5     7  regexpEnc  Lorg/jcodings/Encoding;
            0    5     8   fixedEnc  [Lorg/jcodings/Encoding;
            1    5     9        str  Lorg/jruby/RubyString;
    MethodParameters:
           Name  Flags
      runtime    
      result     
      arg0       
      arg1       
      arg2       
      arg3       
      options    
      regexpEnc  
      fixedEnc   

  private static org.jruby.RubyString processElementIntoResult(org.jruby.Ruby, org.jruby.RubyString, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions, org.jcodings.Encoding, org.jcodings.Encoding[]);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=9, args_size=8
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.RubyString result
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 3 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 4 // org.jruby.runtime.builtin.IRubyObject arg2
        start local 5 // org.jruby.util.RegexpOptions options
        start local 6 // org.jcodings.Encoding regexpEnc
        start local 7 // org.jcodings.Encoding[] fixedEnc
         0: .line 597
            aload 2 /* arg0 */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            astore 8 /* str */
        start local 8 // org.jruby.RubyString str
         1: .line 598
            aload 0 /* runtime */
            aload 5 /* options */
            aload 6 /* regexpEnc */
            aload 7 /* fixedEnc */
            aload 8 /* str */
            invokestatic org.jruby.RubyRegexp.processDRegexpElement:(Lorg/jruby/Ruby;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/RubyString;)Lorg/jcodings/Encoding;
            astore 6 /* regexpEnc */
         2: .line 599
            aload 0 /* runtime */
            aload 1 /* result */
            ifnonnull 3
            aload 8 /* str */
            aload 0 /* runtime */
            invokevirtual org.jruby.RubyString.strDup:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
            goto 4
      StackMap locals: org.jruby.Ruby org.jruby.RubyString org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.util.RegexpOptions org.jcodings.Encoding org.jcodings.Encoding[] org.jruby.RubyString
      StackMap stack: org.jruby.Ruby
         3: aload 1 /* result */
            aload 8 /* str */
            invokevirtual org.jruby.RubyString.append19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
      StackMap locals: org.jruby.Ruby org.jruby.RubyString org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.util.RegexpOptions org.jcodings.Encoding org.jcodings.Encoding[] org.jruby.RubyString
      StackMap stack: org.jruby.Ruby org.jruby.RubyString
         4: aload 3 /* arg1 */
            aload 4 /* arg2 */
            aload 5 /* options */
            aload 6 /* regexpEnc */
            aload 7 /* fixedEnc */
            invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            areturn
        end local 8 // org.jruby.RubyString str
        end local 7 // org.jcodings.Encoding[] fixedEnc
        end local 6 // org.jcodings.Encoding regexpEnc
        end local 5 // org.jruby.util.RegexpOptions options
        end local 4 // org.jruby.runtime.builtin.IRubyObject arg2
        end local 3 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 1 // org.jruby.RubyString result
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0    runtime  Lorg/jruby/Ruby;
            0    5     1     result  Lorg/jruby/RubyString;
            0    5     2       arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3       arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     4       arg2  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     5    options  Lorg/jruby/util/RegexpOptions;
            0    5     6  regexpEnc  Lorg/jcodings/Encoding;
            0    5     7   fixedEnc  [Lorg/jcodings/Encoding;
            1    5     8        str  Lorg/jruby/RubyString;
    MethodParameters:
           Name  Flags
      runtime    
      result     
      arg0       
      arg1       
      arg2       
      options    
      regexpEnc  
      fixedEnc   

  private static org.jruby.RubyString processElementIntoResult(org.jruby.Ruby, org.jruby.RubyString, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions, org.jcodings.Encoding, org.jcodings.Encoding[]);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=8, args_size=7
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.RubyString result
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 3 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 4 // org.jruby.util.RegexpOptions options
        start local 5 // org.jcodings.Encoding regexpEnc
        start local 6 // org.jcodings.Encoding[] fixedEnc
         0: .line 610
            aload 2 /* arg0 */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            astore 7 /* str */
        start local 7 // org.jruby.RubyString str
         1: .line 611
            aload 0 /* runtime */
            aload 4 /* options */
            aload 5 /* regexpEnc */
            aload 6 /* fixedEnc */
            aload 7 /* str */
            invokestatic org.jruby.RubyRegexp.processDRegexpElement:(Lorg/jruby/Ruby;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/RubyString;)Lorg/jcodings/Encoding;
            astore 5 /* regexpEnc */
         2: .line 612
            aload 0 /* runtime */
            aload 1 /* result */
            ifnonnull 3
            aload 7 /* str */
            aload 0 /* runtime */
            invokevirtual org.jruby.RubyString.strDup:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
            goto 4
      StackMap locals: org.jruby.Ruby org.jruby.RubyString org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.util.RegexpOptions org.jcodings.Encoding org.jcodings.Encoding[] org.jruby.RubyString
      StackMap stack: org.jruby.Ruby
         3: aload 1 /* result */
            aload 7 /* str */
            invokevirtual org.jruby.RubyString.append19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
      StackMap locals: org.jruby.Ruby org.jruby.RubyString org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.util.RegexpOptions org.jcodings.Encoding org.jcodings.Encoding[] org.jruby.RubyString
      StackMap stack: org.jruby.Ruby org.jruby.RubyString
         4: aload 3 /* arg1 */
            aload 4 /* options */
            aload 5 /* regexpEnc */
            aload 6 /* fixedEnc */
            invokestatic org.jruby.RubyRegexp.processElementIntoResult:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            areturn
        end local 7 // org.jruby.RubyString str
        end local 6 // org.jcodings.Encoding[] fixedEnc
        end local 5 // org.jcodings.Encoding regexpEnc
        end local 4 // org.jruby.util.RegexpOptions options
        end local 3 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 1 // org.jruby.RubyString result
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0    runtime  Lorg/jruby/Ruby;
            0    5     1     result  Lorg/jruby/RubyString;
            0    5     2       arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3       arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     4    options  Lorg/jruby/util/RegexpOptions;
            0    5     5  regexpEnc  Lorg/jcodings/Encoding;
            0    5     6   fixedEnc  [Lorg/jcodings/Encoding;
            1    5     7        str  Lorg/jruby/RubyString;
    MethodParameters:
           Name  Flags
      runtime    
      result     
      arg0       
      arg1       
      options    
      regexpEnc  
      fixedEnc   

  private static org.jruby.RubyString processElementIntoResult(org.jruby.Ruby, org.jruby.RubyString, org.jruby.runtime.builtin.IRubyObject, org.jruby.util.RegexpOptions, org.jcodings.Encoding, org.jcodings.Encoding[]);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=6
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.RubyString result
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 3 // org.jruby.util.RegexpOptions options
        start local 4 // org.jcodings.Encoding regexpEnc
        start local 5 // org.jcodings.Encoding[] fixedEnc
         0: .line 622
            aload 2 /* arg0 */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            astore 6 /* str */
        start local 6 // org.jruby.RubyString str
         1: .line 623
            aload 0 /* runtime */
            aload 3 /* options */
            aload 4 /* regexpEnc */
            aload 5 /* fixedEnc */
            aload 6 /* str */
            invokestatic org.jruby.RubyRegexp.processDRegexpElement:(Lorg/jruby/Ruby;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/RubyString;)Lorg/jcodings/Encoding;
            astore 4 /* regexpEnc */
         2: .line 624
            aload 1 /* result */
            ifnonnull 3
            aload 6 /* str */
            aload 0 /* runtime */
            invokevirtual org.jruby.RubyString.strDup:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
            goto 4
      StackMap locals: org.jruby.RubyString
      StackMap stack:
         3: aload 1 /* result */
            aload 6 /* str */
            invokevirtual org.jruby.RubyString.append19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
      StackMap locals:
      StackMap stack: org.jruby.RubyString
         4: astore 1 /* result */
         5: .line 625
            aload 4 /* regexpEnc */
            ifnull 6
            aload 1 /* result */
            aload 4 /* regexpEnc */
            invokevirtual org.jruby.RubyString.setEncoding:(Lorg/jcodings/Encoding;)V
         6: .line 626
      StackMap locals:
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 6 // org.jruby.RubyString str
        end local 5 // org.jcodings.Encoding[] fixedEnc
        end local 4 // org.jcodings.Encoding regexpEnc
        end local 3 // org.jruby.util.RegexpOptions options
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 1 // org.jruby.RubyString result
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0    runtime  Lorg/jruby/Ruby;
            0    7     1     result  Lorg/jruby/RubyString;
            0    7     2       arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    7     3    options  Lorg/jruby/util/RegexpOptions;
            0    7     4  regexpEnc  Lorg/jcodings/Encoding;
            0    7     5   fixedEnc  [Lorg/jcodings/Encoding;
            1    7     6        str  Lorg/jruby/RubyString;
    MethodParameters:
           Name  Flags
      runtime    
      result     
      arg0       
      options    
      regexpEnc  
      fixedEnc   

  private static org.jcodings.Encoding processDRegexpElement(org.jruby.Ruby, org.jruby.util.RegexpOptions, org.jcodings.Encoding, org.jcodings.Encoding[], org.jruby.RubyString);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/RubyString;)Lorg/jcodings/Encoding;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=5
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.util.RegexpOptions options
        start local 2 // org.jcodings.Encoding regexpEnc
        start local 3 // org.jcodings.Encoding[] fixedEnc
        start local 4 // org.jruby.RubyString str
         0: .line 630
            aload 4 /* str */
            invokevirtual org.jruby.RubyString.getEncoding:()Lorg/jcodings/Encoding;
            astore 5 /* strEnc */
        start local 5 // org.jcodings.Encoding strEnc
         1: .line 632
            aload 1 /* options */
            invokevirtual org.jruby.util.RegexpOptions.isEncodingNone:()Z
            ifeq 5
            aload 5 /* strEnc */
            getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
            if_acmpeq 5
         2: .line 633
            aload 4 /* str */
            invokevirtual org.jruby.RubyString.scanForCodeRange:()I
            bipush 16
            if_icmpeq 4
         3: .line 634
            aload 0 /* runtime */
            ldc "/.../n has a non escaped non ASCII character in non ASCII-8BIT script"
            invokevirtual org.jruby.Ruby.newRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         4: .line 636
      StackMap locals: org.jcodings.Encoding
      StackMap stack:
            getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
            astore 5 /* strEnc */
         5: .line 642
      StackMap locals:
      StackMap stack:
            aload 0 /* runtime */
            aload 4 /* str */
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            aload 5 /* strEnc */
            aload 3 /* fixedEnc */
            getstatic org.jruby.util.RegexpSupport$ErrorMode.PREPROCESS:Lorg/jruby/util/RegexpSupport$ErrorMode;
            invokestatic org.jruby.RubyRegexp.preprocessLight:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpSupport$ErrorMode;)V
         6: .line 644
            aload 3 /* fixedEnc */
            iconst_0
            aaload
            ifnull 12
         7: .line 645
            aload 2 /* regexpEnc */
            ifnull 11
            aload 2 /* regexpEnc */
            aload 3 /* fixedEnc */
            iconst_0
            aaload
            if_acmpeq 11
         8: .line 646
            aload 0 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "encoding mismatch in dynamic regexp: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         9: .line 647
            new java.lang.String
            dup
            aload 2 /* regexpEnc */
            invokevirtual org.jcodings.Encoding.getName:()[B
            invokespecial java.lang.String.<init>:([B)V
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            new java.lang.String
            dup
            aload 3 /* fixedEnc */
            iconst_0
            aaload
            invokevirtual org.jcodings.Encoding.getName:()[B
            invokespecial java.lang.String.<init>:([B)V
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        10: .line 646
            invokevirtual org.jruby.Ruby.newRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        11: .line 650
      StackMap locals:
      StackMap stack:
            aload 3 /* fixedEnc */
            iconst_0
            aaload
            astore 2 /* regexpEnc */
        12: .line 652
      StackMap locals:
      StackMap stack:
            aload 2 /* regexpEnc */
            areturn
        end local 5 // org.jcodings.Encoding strEnc
        end local 4 // org.jruby.RubyString str
        end local 3 // org.jcodings.Encoding[] fixedEnc
        end local 2 // org.jcodings.Encoding regexpEnc
        end local 1 // org.jruby.util.RegexpOptions options
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   13     0    runtime  Lorg/jruby/Ruby;
            0   13     1    options  Lorg/jruby/util/RegexpOptions;
            0   13     2  regexpEnc  Lorg/jcodings/Encoding;
            0   13     3   fixedEnc  [Lorg/jcodings/Encoding;
            0   13     4        str  Lorg/jruby/RubyString;
            1   13     5     strEnc  Lorg/jcodings/Encoding;
    MethodParameters:
           Name  Flags
      runtime    
      options    
      regexpEnc  
      fixedEnc   
      str        

  private void check();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 656
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            ifnonnull 1
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            ldc "uninitialized Regexp"
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         1: .line 657
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyRegexp;

  public static org.jruby.runtime.builtin.IRubyObject try_convert(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject args
         0: .line 661
            aload 2 /* args */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getRegexp:()Lorg/jruby/RubyClass;
            ldc "to_regexp"
            invokestatic org.jruby.util.TypeConverter.convertToTypeWithCheck:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject args
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2     args  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      args     

  public static org.jruby.RubyString quote(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/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 669
            aload 2 /* arg */
            invokestatic org.jruby.RubyRegexp.operandCheck:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            astore 3 /* str */
        start local 3 // org.jruby.RubyString str
         1: .line 670
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 3 /* str */
            invokestatic org.jruby.RubyRegexp.quote:(Lorg/jruby/RubyString;)Lorg/jruby/util/ByteList;
            invokestatic org.jruby.RubyString.newStringShared:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            areturn
        end local 3 // org.jruby.RubyString str
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        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     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
            1    2     3      str  Lorg/jruby/RubyString;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"quote", "escape"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      arg      

  public static org.jruby.runtime.builtin.IRubyObject quote19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 675
            aload 0 /* context */
            aload 1 /* recv */
            aload 2 /* arg */
            invokestatic org.jruby.RubyRegexp.quote:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      recv     
      arg      

  static org.jruby.util.ByteList quote(org.jruby.RubyString);
    descriptor: (Lorg/jruby/RubyString;)Lorg/jruby/util/ByteList;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.jruby.RubyString str
         0: .line 679
            aload 0 /* str */
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 1 /* bytes */
        start local 1 // org.jruby.util.ByteList bytes
         1: .line 680
            aload 1 /* bytes */
            aload 0 /* str */
            invokevirtual org.jruby.RubyString.isAsciiOnly:()Z
            invokestatic org.jruby.RubyRegexp.quote:(Lorg/jruby/util/ByteList;Z)Lorg/jruby/util/ByteList;
            astore 2 /* qBytes */
        start local 2 // org.jruby.util.ByteList qBytes
         2: .line 681
            aload 2 /* qBytes */
            aload 1 /* bytes */
            if_acmpne 3
            aload 0 /* str */
            invokevirtual org.jruby.RubyString.setByteListShared:()V
         3: .line 682
      StackMap locals: org.jruby.util.ByteList org.jruby.util.ByteList
      StackMap stack:
            aload 2 /* qBytes */
            areturn
        end local 2 // org.jruby.util.ByteList qBytes
        end local 1 // org.jruby.util.ByteList bytes
        end local 0 // org.jruby.RubyString str
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0     str  Lorg/jruby/RubyString;
            1    4     1   bytes  Lorg/jruby/util/ByteList;
            2    4     2  qBytes  Lorg/jruby/util/ByteList;
    MethodParameters:
      Name  Flags
      str   final

  static org.jruby.util.ByteList quote(org.jruby.util.ByteList, boolean);
    descriptor: (Lorg/jruby/util/ByteList;Z)Lorg/jruby/util/ByteList;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=12, args_size=2
        start local 0 // org.jruby.util.ByteList bs
        start local 1 // boolean asciiOnly
         0: .line 690
            aload 0 /* bs */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            istore 2 /* p */
        start local 2 // int p
         1: .line 691
            iload 2 /* p */
            aload 0 /* bs */
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            iadd
            istore 3 /* end */
        start local 3 // int end
         2: .line 692
            aload 0 /* bs */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            astore 4 /* bytes */
        start local 4 // byte[] bytes
         3: .line 693
            aload 0 /* bs */
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            astore 5 /* enc */
        start local 5 // org.jcodings.Encoding enc
         4: .line 696
            goto 21
         5: .line 699
      StackMap locals: org.jruby.util.ByteList int int int byte[] org.jcodings.Encoding
      StackMap stack:
            aload 5 /* enc */
            invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
            ifeq 9
         6: .line 700
            iconst_1
            istore 7 /* cl */
        start local 7 // int cl
         7: .line 701
            aload 4 /* bytes */
            iload 2 /* p */
            baload
            sipush 255
            iand
            istore 6 /* c */
        start local 6 // int c
         8: .line 702
            goto 14
        end local 7 // int cl
        end local 6 // int c
         9: .line 703
      StackMap locals:
      StackMap stack:
            aload 5 /* enc */
            aload 4 /* bytes */
            iload 2 /* p */
            iload 3 /* end */
            invokestatic org.jruby.util.StringSupport.preciseLength:(Lorg/jcodings/Encoding;[BII)I
            istore 7 /* cl */
        start local 7 // int cl
        10: .line 704
            iload 7 /* cl */
            ifge 13
        11: .line 705
            iload 2 /* p */
            aload 5 /* enc */
            aload 4 /* bytes */
            iload 2 /* p */
            iload 3 /* end */
            invokestatic org.jruby.util.StringSupport.length:(Lorg/jcodings/Encoding;[BII)I
            iadd
            istore 2 /* p */
        12: .line 706
            goto 21
        13: .line 708
      StackMap locals: org.jruby.util.ByteList int int int byte[] org.jcodings.Encoding top int
      StackMap stack:
            aload 5 /* enc */
            aload 4 /* bytes */
            iload 2 /* p */
            iload 3 /* end */
            invokevirtual org.jcodings.Encoding.mbcToCode:([BII)I
            istore 6 /* c */
        start local 6 // int c
        14: .line 711
      StackMap locals: org.jruby.util.ByteList int int int byte[] org.jcodings.Encoding int int
      StackMap stack:
            iload 6 /* c */
            invokestatic org.jcodings.Encoding.isAscii:(I)Z
            ifne 17
        15: .line 712
            iload 2 /* p */
            aload 5 /* enc */
            aload 4 /* bytes */
            iload 2 /* p */
            iload 3 /* end */
            invokestatic org.jruby.util.StringSupport.length:(Lorg/jcodings/Encoding;[BII)I
            iadd
            istore 2 /* p */
        16: .line 713
            goto 21
        17: .line 716
      StackMap locals:
      StackMap stack:
            iload 6 /* c */
            lookupswitch { // 22
                    9: 18
                   10: 18
                   11: 18
                   12: 18
                   13: 18
                   32: 18
                   35: 18
                   36: 18
                   40: 18
                   41: 18
                   42: 18
                   43: 18
                   45: 18
                   46: 18
                   63: 18
                   91: 18
                   92: 18
                   93: 18
                   94: 18
                  123: 18
                  124: 18
                  125: 18
              default: 19
          }
        18: .line 723
      StackMap locals:
      StackMap stack:
            goto 27
        19: .line 724
      StackMap locals:
      StackMap stack:
            iload 2 /* p */
        20: .line 725
            iload 7 /* cl */
            iadd
            istore 2 /* p */
        end local 7 // int cl
        end local 6 // int c
        21: .line 696
      StackMap locals:
      StackMap stack:
            iload 2 /* p */
            iload 3 /* end */
            if_icmplt 5
        22: .line 727
            iload 1 /* asciiOnly */
            ifeq 26
        23: .line 728
            aload 0 /* bs */
            invokevirtual org.jruby.util.ByteList.shallowDup:()Lorg/jruby/util/ByteList;
            astore 6 /* tmp */
        start local 6 // org.jruby.util.ByteList tmp
        24: .line 729
            aload 6 /* tmp */
            getstatic org.jcodings.specific.USASCIIEncoding.INSTANCE:Lorg/jcodings/specific/USASCIIEncoding;
            invokevirtual org.jruby.util.ByteList.setEncoding:(Lorg/jcodings/Encoding;)V
        25: .line 730
            aload 6 /* tmp */
            areturn
        end local 6 // org.jruby.util.ByteList tmp
        26: .line 732
      StackMap locals:
      StackMap stack:
            aload 0 /* bs */
            areturn
        27: .line 735
      StackMap locals:
      StackMap stack:
            new org.jruby.util.ByteList
            dup
            iload 3 /* end */
            iconst_2
            imul
            invokespecial org.jruby.util.ByteList.<init>:(I)V
            astore 6 /* result */
        start local 6 // org.jruby.util.ByteList result
        28: .line 736
            aload 6 /* result */
            iload 1 /* asciiOnly */
            ifeq 29
            getstatic org.jcodings.specific.USASCIIEncoding.INSTANCE:Lorg/jcodings/specific/USASCIIEncoding;
            goto 30
      StackMap locals: org.jruby.util.ByteList int int int byte[] org.jcodings.Encoding org.jruby.util.ByteList
      StackMap stack: org.jruby.util.ByteList
        29: aload 0 /* bs */
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
      StackMap locals: org.jruby.util.ByteList int int int byte[] org.jcodings.Encoding org.jruby.util.ByteList
      StackMap stack: org.jruby.util.ByteList org.jcodings.Encoding
        30: invokevirtual org.jruby.util.ByteList.setEncoding:(Lorg/jcodings/Encoding;)V
        31: .line 737
            aload 6 /* result */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            astore 7 /* obytes */
        start local 7 // byte[] obytes
        32: .line 738
            iload 2 /* p */
            aload 0 /* bs */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            isub
            istore 8 /* op */
        start local 8 // int op
        33: .line 739
            aload 4 /* bytes */
            aload 0 /* bs */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            aload 7 /* obytes */
            iconst_0
            iload 8 /* op */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        34: .line 741
            goto 71
        35: .line 744
      StackMap locals: byte[] int
      StackMap stack:
            aload 5 /* enc */
            invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
            ifeq 39
        36: .line 745
            iconst_1
            istore 10 /* cl */
        start local 10 // int cl
        37: .line 746
            aload 4 /* bytes */
            iload 2 /* p */
            baload
            sipush 255
            iand
            istore 9 /* c */
        start local 9 // int c
        38: .line 747
            goto 41
        end local 10 // int cl
        end local 9 // int c
        39: .line 748
      StackMap locals:
      StackMap stack:
            aload 5 /* enc */
            aload 4 /* bytes */
            iload 2 /* p */
            iload 3 /* end */
            invokestatic org.jruby.util.StringSupport.preciseLength:(Lorg/jcodings/Encoding;[BII)I
            istore 10 /* cl */
        start local 10 // int cl
        40: .line 749
            aload 5 /* enc */
            aload 4 /* bytes */
            iload 2 /* p */
            iload 3 /* end */
            invokevirtual org.jcodings.Encoding.mbcToCode:([BII)I
            istore 9 /* c */
        start local 9 // int c
        41: .line 752
      StackMap locals: int int
      StackMap stack:
            iload 9 /* c */
            invokestatic org.jcodings.Encoding.isAscii:(I)Z
            ifne 47
        42: .line 753
            aload 5 /* enc */
            aload 4 /* bytes */
            iload 2 /* p */
            iload 3 /* end */
            invokestatic org.jruby.util.StringSupport.length:(Lorg/jcodings/Encoding;[BII)I
            istore 11 /* n */
        start local 11 // int n
        43: .line 754
            goto 45
      StackMap locals: int
      StackMap stack:
        44: aload 7 /* obytes */
            iload 8 /* op */
            iinc 8 /* op */ 1
            aload 4 /* bytes */
            iload 2 /* p */
            iinc 2 /* p */ 1
            baload
            bastore
      StackMap locals:
      StackMap stack:
        45: iload 11 /* n */
            iinc 11 /* n */ -1
            ifgt 44
        46: .line 755
            goto 71
        end local 11 // int n
        47: .line 757
      StackMap locals:
      StackMap stack:
            iload 2 /* p */
            iload 10 /* cl */
            iadd
            istore 2 /* p */
        48: .line 758
            iload 9 /* c */
            lookupswitch { // 22
                    9: 54
                   10: 57
                   11: 66
                   12: 63
                   13: 60
                   32: 51
                   35: 49
                   36: 49
                   40: 49
                   41: 49
                   42: 49
                   43: 49
                   45: 49
                   46: 49
                   63: 49
                   91: 49
                   92: 49
                   93: 49
                   94: 49
                  123: 49
                  124: 49
                  125: 49
              default: 69
          }
        49: .line 764
      StackMap locals:
      StackMap stack:
            iload 8 /* op */
            aload 5 /* enc */
            bipush 92
            aload 7 /* obytes */
            iload 8 /* op */
            invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
            iadd
            istore 8 /* op */
        50: .line 765
            goto 69
        51: .line 767
      StackMap locals:
      StackMap stack:
            iload 8 /* op */
            aload 5 /* enc */
            bipush 92
            aload 7 /* obytes */
            iload 8 /* op */
            invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
            iadd
            istore 8 /* op */
        52: .line 768
            iload 8 /* op */
            aload 5 /* enc */
            bipush 32
            aload 7 /* obytes */
            iload 8 /* op */
            invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
            iadd
            istore 8 /* op */
        53: .line 769
            goto 71
        54: .line 771
      StackMap locals:
      StackMap stack:
            iload 8 /* op */
            aload 5 /* enc */
            bipush 92
            aload 7 /* obytes */
            iload 8 /* op */
            invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
            iadd
            istore 8 /* op */
        55: .line 772
            iload 8 /* op */
            aload 5 /* enc */
            bipush 116
            aload 7 /* obytes */
            iload 8 /* op */
            invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
            iadd
            istore 8 /* op */
        56: .line 773
            goto 71
        57: .line 775
      StackMap locals:
      StackMap stack:
            iload 8 /* op */
            aload 5 /* enc */
            bipush 92
            aload 7 /* obytes */
            iload 8 /* op */
            invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
            iadd
            istore 8 /* op */
        58: .line 776
            iload 8 /* op */
            aload 5 /* enc */
            bipush 110
            aload 7 /* obytes */
            iload 8 /* op */
            invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
            iadd
            istore 8 /* op */
        59: .line 777
            goto 71
        60: .line 779
      StackMap locals:
      StackMap stack:
            iload 8 /* op */
            aload 5 /* enc */
            bipush 92
            aload 7 /* obytes */
            iload 8 /* op */
            invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
            iadd
            istore 8 /* op */
        61: .line 780
            iload 8 /* op */
            aload 5 /* enc */
            bipush 114
            aload 7 /* obytes */
            iload 8 /* op */
            invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
            iadd
            istore 8 /* op */
        62: .line 781
            goto 71
        63: .line 783
      StackMap locals:
      StackMap stack:
            iload 8 /* op */
            aload 5 /* enc */
            bipush 92
            aload 7 /* obytes */
            iload 8 /* op */
            invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
            iadd
            istore 8 /* op */
        64: .line 784
            iload 8 /* op */
            aload 5 /* enc */
            bipush 102
            aload 7 /* obytes */
            iload 8 /* op */
            invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
            iadd
            istore 8 /* op */
        65: .line 785
            goto 71
        66: .line 787
      StackMap locals:
      StackMap stack:
            iload 8 /* op */
            aload 5 /* enc */
            bipush 92
            aload 7 /* obytes */
            iload 8 /* op */
            invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
            iadd
            istore 8 /* op */
        67: .line 788
            iload 8 /* op */
            aload 5 /* enc */
            bipush 118
            aload 7 /* obytes */
            iload 8 /* op */
            invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
            iadd
            istore 8 /* op */
        68: .line 789
            goto 71
        69: .line 790
      StackMap locals:
      StackMap stack:
            iload 8 /* op */
        70: .line 791
            aload 5 /* enc */
            iload 9 /* c */
            aload 7 /* obytes */
            iload 8 /* op */
            invokevirtual org.jcodings.Encoding.codeToMbc:(I[BI)I
            iadd
            istore 8 /* op */
        end local 10 // int cl
        end local 9 // int c
        71: .line 741
      StackMap locals:
      StackMap stack:
            iload 2 /* p */
            iload 3 /* end */
            if_icmplt 35
        72: .line 794
            aload 6 /* result */
            iload 8 /* op */
            invokevirtual org.jruby.util.ByteList.setRealSize:(I)V
        73: .line 795
            aload 6 /* result */
            areturn
        end local 8 // int op
        end local 7 // byte[] obytes
        end local 6 // org.jruby.util.ByteList result
        end local 5 // org.jcodings.Encoding enc
        end local 4 // byte[] bytes
        end local 3 // int end
        end local 2 // int p
        end local 1 // boolean asciiOnly
        end local 0 // org.jruby.util.ByteList bs
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   74     0         bs  Lorg/jruby/util/ByteList;
            0   74     1  asciiOnly  Z
            1   74     2          p  I
            2   74     3        end  I
            3   74     4      bytes  [B
            4   74     5        enc  Lorg/jcodings/Encoding;
            8    9     6          c  I
           14   21     6          c  I
            7    9     7         cl  I
           10   21     7         cl  I
           24   26     6        tmp  Lorg/jruby/util/ByteList;
           28   74     6     result  Lorg/jruby/util/ByteList;
           32   74     7     obytes  [B
           33   74     8         op  I
           38   39     9          c  I
           41   71     9          c  I
           37   39    10         cl  I
           40   71    10         cl  I
           43   47    11          n  I
    MethodParameters:
           Name  Flags
      bs         
      asciiOnly  

  public static org.jruby.util.ByteList quote19(org.jruby.util.ByteList, boolean);
    descriptor: (Lorg/jruby/util/ByteList;Z)Lorg/jruby/util/ByteList;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.util.ByteList bs
        start local 1 // boolean asciiOnly
         0: .line 800
            aload 0 /* bs */
            iload 1 /* asciiOnly */
            invokestatic org.jruby.RubyRegexp.quote:(Lorg/jruby/util/ByteList;Z)Lorg/jruby/util/ByteList;
            areturn
        end local 1 // boolean asciiOnly
        end local 0 // org.jruby.util.ByteList bs
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0         bs  Lorg/jruby/util/ByteList;
            0    1     1  asciiOnly  Z
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
           Name  Flags
      bs         
      asciiOnly  

  public static org.jruby.runtime.builtin.IRubyObject last_match_s(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: (0x0009) ACC_PUBLIC, 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 recv
         0: .line 808
            aload 0 /* context */
            invokestatic org.jruby.RubyRegexp.getBackRef:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"last_match"}, meta = true, reads = {org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;})
    MethodParameters:
         Name  Flags
      context  
      recv     

  public static org.jruby.runtime.builtin.IRubyObject getBackRef(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.jruby.runtime.ThreadContext context
         0: .line 812
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getBackRef:()Lorg/jruby/runtime/builtin/IRubyObject;
            astore 1 /* backref */
        start local 1 // org.jruby.runtime.builtin.IRubyObject backref
         1: .line 813
            aload 1 /* backref */
            instanceof org.jruby.RubyMatchData
            ifeq 2
            aload 1 /* backref */
            checkcast org.jruby.RubyMatchData
            invokevirtual org.jruby.RubyMatchData.use:()V
         2: .line 814
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 1 /* backref */
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject backref
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            1    3     1  backref  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  

  public static org.jruby.runtime.builtin.IRubyObject last_match_s(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject nth
         0: .line 822
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getBackRef:()Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* match */
        start local 3 // org.jruby.runtime.builtin.IRubyObject match
         1: .line 823
            aload 3 /* match */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 2
            aload 3 /* match */
            areturn
         2: .line 824
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 3 /* match */
            checkcast org.jruby.RubyMatchData
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* nth */
            invokevirtual org.jruby.RubyMatchData.backrefNumber:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)I
            aload 3 /* match */
            invokestatic org.jruby.RubyRegexp.nth_match:(ILorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject match
        end local 2 // org.jruby.runtime.builtin.IRubyObject nth
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     2      nth  Lorg/jruby/runtime/builtin/IRubyObject;
            1    3     3    match  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"last_match"}, meta = true, reads = {org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;})
    MethodParameters:
         Name  Flags
      context  
      recv     
      nth      

  public static org.jruby.runtime.builtin.IRubyObject union(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=15, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 833
            aload 2 /* args */
            arraylength
            iconst_1
            if_icmpne 6
            aload 2 /* args */
            iconst_0
            aaload
            invokeinterface org.jruby.runtime.builtin.IRubyObject.checkArrayType:()Lorg/jruby/runtime/builtin/IRubyObject;
            dup
            astore 3 /* obj */
        start local 3 // org.jruby.runtime.builtin.IRubyObject obj
         1: invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 6
         2: .line 834
            aload 3 /* obj */
            checkcast org.jruby.RubyArray
            astore 4 /* ary */
        start local 4 // org.jruby.RubyArray ary
         3: .line 835
            aload 4 /* ary */
            invokevirtual org.jruby.RubyArray.size:()I
            anewarray org.jruby.runtime.builtin.IRubyObject
            astore 5 /* tmp */
        start local 5 // org.jruby.runtime.builtin.IRubyObject[] tmp
         4: .line 836
            aload 4 /* ary */
            aload 5 /* tmp */
            iconst_0
            invokevirtual org.jruby.RubyArray.copyInto:([Lorg/jruby/runtime/builtin/IRubyObject;I)V
         5: .line 837
            aload 5 /* tmp */
            astore 2 /* args */
        end local 5 // org.jruby.runtime.builtin.IRubyObject[] tmp
        end local 4 // org.jruby.RubyArray ary
        end local 3 // org.jruby.runtime.builtin.IRubyObject obj
         6: .line 840
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         7: .line 841
            aload 2 /* args */
            arraylength
            ifne 9
         8: .line 842
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getRegexp:()Lorg/jruby/RubyClass;
            aload 0 /* context */
            aload 4 /* runtime */
            ldc "(?!)"
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.RubyClass.newInstance:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         9: .line 843
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] top org.jruby.Ruby
      StackMap stack:
            aload 2 /* args */
            arraylength
            iconst_1
            if_icmpne 14
        10: .line 844
            aload 2 /* args */
            iconst_0
            aaload
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getRegexp:()Lorg/jruby/RubyClass;
            ldc "to_regexp"
            invokestatic org.jruby.util.TypeConverter.convertToTypeWithCheck:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 5 /* re */
        start local 5 // org.jruby.runtime.builtin.IRubyObject re
        11: .line 845
            aload 5 /* re */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 12
            aload 5 /* re */
            goto 13
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
        12: aload 4 /* runtime */
            aload 0 /* context */
            aload 1 /* recv */
            aload 2 /* args */
            iconst_0
            aaload
            invokestatic org.jruby.RubyRegexp.quote:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            iconst_0
            invokestatic org.jruby.RubyRegexp.newRegexpFromStr:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;I)Lorg/jruby/RubyRegexp;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
        13: areturn
        end local 5 // org.jruby.runtime.builtin.IRubyObject re
        14: .line 847
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* hasAsciiOnly */
        start local 5 // boolean hasAsciiOnly
        15: .line 848
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.newString:()Lorg/jruby/RubyString;
            astore 6 /* source */
        start local 6 // org.jruby.RubyString source
        16: .line 849
            aconst_null
            astore 7 /* hasAsciiCompatFixed */
        start local 7 // org.jcodings.Encoding hasAsciiCompatFixed
        17: .line 850
            aconst_null
            astore 8 /* hasAsciiIncompat */
        start local 8 // org.jcodings.Encoding hasAsciiIncompat
        18: .line 852
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        19: goto 66
        20: .line 853
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] top org.jruby.Ruby int org.jruby.RubyString org.jcodings.Encoding org.jcodings.Encoding int
      StackMap stack:
            aload 2 /* args */
            iload 9 /* i */
            aaload
            astore 10 /* e */
        start local 10 // org.jruby.runtime.builtin.IRubyObject e
        21: .line 854
            iload 9 /* i */
            ifle 22
            aload 6 /* source */
            bipush 124
            invokevirtual org.jruby.RubyString.cat:(B)Lorg/jruby/RubyString;
            pop
        22: .line 855
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 10 /* e */
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getRegexp:()Lorg/jruby/RubyClass;
            ldc "to_regexp"
            invokestatic org.jruby.util.TypeConverter.convertToTypeWithCheck:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 11 /* v */
        start local 11 // org.jruby.runtime.builtin.IRubyObject v
        23: .line 857
            aload 11 /* v */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpeq 41
        24: .line 858
            aload 11 /* v */
            checkcast org.jruby.RubyRegexp
            astore 14 /* regex */
        start local 14 // org.jruby.RubyRegexp regex
        25: .line 859
            aload 14 /* regex */
            invokevirtual org.jruby.RubyRegexp.getEncoding:()Lorg/jcodings/Encoding;
            astore 12 /* enc */
        start local 12 // org.jcodings.Encoding enc
        26: .line 860
            aload 12 /* enc */
            invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
            ifne 32
        27: .line 861
            aload 8 /* hasAsciiIncompat */
            ifnonnull 30
        28: .line 862
            aload 12 /* enc */
            astore 8 /* hasAsciiIncompat */
        29: .line 863
            goto 39
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] top org.jruby.Ruby int org.jruby.RubyString org.jcodings.Encoding org.jcodings.Encoding int org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jcodings.Encoding top org.jruby.RubyRegexp
      StackMap stack:
        30: aload 8 /* hasAsciiIncompat */
            aload 12 /* enc */
            if_acmpeq 39
        31: .line 864
            aload 4 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "incompatible encodings: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* hasAsciiIncompat */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 12 /* enc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        32: .line 866
      StackMap locals:
      StackMap stack:
            aload 14 /* regex */
            invokevirtual org.jruby.RubyRegexp.getOptions:()Lorg/jruby/util/RegexpOptions;
            invokevirtual org.jruby.util.RegexpOptions.isFixed:()Z
            ifeq 38
        33: .line 867
            aload 7 /* hasAsciiCompatFixed */
            ifnonnull 36
        34: .line 868
            aload 12 /* enc */
            astore 7 /* hasAsciiCompatFixed */
        35: .line 869
            goto 39
      StackMap locals:
      StackMap stack:
        36: aload 7 /* hasAsciiCompatFixed */
            aload 12 /* enc */
            if_acmpeq 39
        37: .line 870
            aload 4 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "incompatible encodings: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* hasAsciiCompatFixed */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 12 /* enc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        38: .line 873
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 5 /* hasAsciiOnly */
        39: .line 875
      StackMap locals:
      StackMap stack:
            aload 14 /* regex */
            invokevirtual org.jruby.RubyRegexp.to_s:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 13 /* re */
        end local 14 // org.jruby.RubyRegexp regex
        start local 13 // org.jruby.util.ByteList re
        40: .line 876
            goto 58
        end local 13 // org.jruby.util.ByteList re
        end local 12 // org.jcodings.Encoding enc
        41: .line 877
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] top org.jruby.Ruby int org.jruby.RubyString org.jcodings.Encoding org.jcodings.Encoding int org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 10 /* e */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            astore 14 /* str */
        start local 14 // org.jruby.RubyString str
        42: .line 878
            aload 14 /* str */
            invokevirtual org.jruby.RubyString.getEncoding:()Lorg/jcodings/Encoding;
            astore 12 /* enc */
        start local 12 // org.jcodings.Encoding enc
        43: .line 880
            aload 12 /* enc */
            invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
            ifne 49
        44: .line 881
            aload 8 /* hasAsciiIncompat */
            ifnonnull 47
        45: .line 882
            aload 12 /* enc */
            astore 8 /* hasAsciiIncompat */
        46: .line 883
            goto 57
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] top org.jruby.Ruby int org.jruby.RubyString org.jcodings.Encoding org.jcodings.Encoding int org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jcodings.Encoding top org.jruby.RubyString
      StackMap stack:
        47: aload 8 /* hasAsciiIncompat */
            aload 12 /* enc */
            if_acmpeq 57
        48: .line 884
            aload 4 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "incompatible encodings: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* hasAsciiIncompat */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 12 /* enc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        49: .line 886
      StackMap locals:
      StackMap stack:
            aload 14 /* str */
            invokevirtual org.jruby.RubyString.isAsciiOnly:()Z
            ifeq 52
        50: .line 887
            iconst_1
            istore 5 /* hasAsciiOnly */
        51: .line 888
            goto 57
        52: .line 889
      StackMap locals:
      StackMap stack:
            aload 7 /* hasAsciiCompatFixed */
            ifnonnull 55
        53: .line 890
            aload 12 /* enc */
            astore 7 /* hasAsciiCompatFixed */
        54: .line 891
            goto 57
      StackMap locals:
      StackMap stack:
        55: aload 7 /* hasAsciiCompatFixed */
            aload 12 /* enc */
            if_acmpeq 57
        56: .line 892
            aload 4 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "incompatible encodings: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* hasAsciiCompatFixed */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 12 /* enc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        57: .line 895
      StackMap locals:
      StackMap stack:
            aload 14 /* str */
            invokestatic org.jruby.RubyRegexp.quote:(Lorg/jruby/RubyString;)Lorg/jruby/util/ByteList;
            astore 13 /* re */
        end local 14 // org.jruby.RubyString str
        start local 13 // org.jruby.util.ByteList re
        58: .line 898
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] top org.jruby.Ruby int org.jruby.RubyString org.jcodings.Encoding org.jcodings.Encoding int org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jcodings.Encoding org.jruby.util.ByteList
      StackMap stack:
            aload 8 /* hasAsciiIncompat */
            ifnull 63
        59: .line 899
            iload 5 /* hasAsciiOnly */
            ifeq 61
        60: .line 900
            aload 4 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "ASCII incompatible encoding: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* hasAsciiIncompat */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        61: .line 902
      StackMap locals:
      StackMap stack:
            aload 7 /* hasAsciiCompatFixed */
            ifnull 63
        62: .line 903
            aload 4 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "incompatible encodings: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* hasAsciiIncompat */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 7 /* hasAsciiCompatFixed */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        63: .line 908
      StackMap locals:
      StackMap stack:
            iload 9 /* i */
            ifne 64
            aload 6 /* source */
            aload 12 /* enc */
            invokevirtual org.jruby.RubyString.setEncoding:(Lorg/jcodings/Encoding;)V
        64: .line 909
      StackMap locals:
      StackMap stack:
            aload 6 /* source */
            aload 13 /* re */
            invokevirtual org.jruby.RubyString.cat:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            pop
        end local 13 // org.jruby.util.ByteList re
        end local 12 // org.jcodings.Encoding enc
        end local 11 // org.jruby.runtime.builtin.IRubyObject v
        end local 10 // org.jruby.runtime.builtin.IRubyObject e
        65: .line 852
            iinc 9 /* i */ 1
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] top org.jruby.Ruby int org.jruby.RubyString org.jcodings.Encoding org.jcodings.Encoding int
      StackMap stack:
        66: iload 9 /* i */
            aload 2 /* args */
            arraylength
            if_icmplt 20
        end local 9 // int i
        67: .line 911
            aload 8 /* hasAsciiIncompat */
            ifnull 70
        68: .line 912
            aload 6 /* source */
            aload 8 /* hasAsciiIncompat */
            invokevirtual org.jruby.RubyString.setEncoding:(Lorg/jcodings/Encoding;)V
        69: .line 913
            goto 74
      StackMap locals:
      StackMap stack:
        70: aload 7 /* hasAsciiCompatFixed */
            ifnull 73
        71: .line 914
            aload 6 /* source */
            aload 7 /* hasAsciiCompatFixed */
            invokevirtual org.jruby.RubyString.setEncoding:(Lorg/jcodings/Encoding;)V
        72: .line 915
            goto 74
        73: .line 916
      StackMap locals:
      StackMap stack:
            aload 6 /* source */
            getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
            invokevirtual org.jruby.RubyString.setEncoding:(Lorg/jcodings/Encoding;)V
        74: .line 918
      StackMap locals:
      StackMap stack:
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getRegexp:()Lorg/jruby/RubyClass;
            aload 0 /* context */
            aload 6 /* source */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.RubyClass.newInstance:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 8 // org.jcodings.Encoding hasAsciiIncompat
        end local 7 // org.jcodings.Encoding hasAsciiCompatFixed
        end local 6 // org.jruby.RubyString source
        end local 5 // boolean hasAsciiOnly
        end local 4 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   75     0              context  Lorg/jruby/runtime/ThreadContext;
            0   75     1                 recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0   75     2                 args  [Lorg/jruby/runtime/builtin/IRubyObject;
            1    6     3                  obj  Lorg/jruby/runtime/builtin/IRubyObject;
            3    6     4                  ary  Lorg/jruby/RubyArray;
            4    6     5                  tmp  [Lorg/jruby/runtime/builtin/IRubyObject;
            7   75     4              runtime  Lorg/jruby/Ruby;
           11   14     5                   re  Lorg/jruby/runtime/builtin/IRubyObject;
           15   75     5         hasAsciiOnly  Z
           16   75     6               source  Lorg/jruby/RubyString;
           17   75     7  hasAsciiCompatFixed  Lorg/jcodings/Encoding;
           18   75     8     hasAsciiIncompat  Lorg/jcodings/Encoding;
           19   67     9                    i  I
           21   65    10                    e  Lorg/jruby/runtime/builtin/IRubyObject;
           23   65    11                    v  Lorg/jruby/runtime/builtin/IRubyObject;
           26   41    12                  enc  Lorg/jcodings/Encoding;
           43   65    12                  enc  Lorg/jcodings/Encoding;
           40   41    13                   re  Lorg/jruby/util/ByteList;
           58   65    13                   re  Lorg/jruby/util/ByteList;
           25   40    14                regex  Lorg/jruby/RubyRegexp;
           42   58    14                  str  Lorg/jruby/RubyString;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"union"}, rest = true, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      args     

  public static org.jruby.runtime.builtin.IRubyObject union19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 924
            aload 0 /* context */
            aload 1 /* recv */
            aload 2 /* args */
            invokestatic org.jruby.RubyRegexp.union:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      recv     
      args     

  public org.jruby.runtime.builtin.IRubyObject initialize_copy(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.builtin.IRubyObject re
         0: .line 932
            aload 0 /* this */
            aload 1 /* re */
            if_acmpne 1
            aload 0 /* this */
            areturn
         1: .line 933
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.checkFrozen:()V
         2: .line 935
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.getMetaClass:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.getRealClass:()Lorg/jruby/RubyClass;
            aload 1 /* re */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.getRealClass:()Lorg/jruby/RubyClass;
            if_acmpeq 4
         3: .line 936
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.getRuntime:()Lorg/jruby/Ruby;
            ldc "wrong argument type"
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         4: .line 939
      StackMap locals:
      StackMap stack:
            aload 1 /* re */
            checkcast org.jruby.RubyRegexp
            astore 2 /* regexp */
        start local 2 // org.jruby.RubyRegexp regexp
         5: .line 940
            aload 2 /* regexp */
            invokevirtual org.jruby.RubyRegexp.check:()V
         6: .line 942
            aload 0 /* this */
            aload 2 /* regexp */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            aload 2 /* regexp */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            aload 2 /* regexp */
            invokevirtual org.jruby.RubyRegexp.getOptions:()Lorg/jruby/util/RegexpOptions;
            invokevirtual org.jruby.RubyRegexp.regexpInitialize:(Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            areturn
        end local 2 // org.jruby.RubyRegexp regexp
        end local 1 // org.jruby.runtime.builtin.IRubyObject re
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lorg/jruby/RubyRegexp;
            0    7     1      re  Lorg/jruby/runtime/builtin/IRubyObject;
            5    7     2  regexp  Lorg/jruby/RubyRegexp;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(required = 1, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
    MethodParameters:
      Name  Flags
      re    

  private static int objectAsJoniOptions(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 946
            aload 0 /* arg */
            instanceof org.jruby.RubyFixnum
            ifeq 1
            aload 0 /* arg */
            invokestatic org.jruby.RubyNumeric.fix2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            ireturn
         1: .line 947
      StackMap locals:
      StackMap stack:
            aload 0 /* arg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 2
            iconst_1
            ireturn
         2: .line 949
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject arg
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   arg  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      arg   

  public org.jruby.runtime.builtin.IRubyObject initialize_m(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 954
            aload 1 /* arg */
            instanceof org.jruby.RubyRegexp
            ifeq 1
            aload 0 /* this */
            aload 1 /* arg */
            checkcast org.jruby.RubyRegexp
            invokevirtual org.jruby.RubyRegexp.initializeByRegexp:(Lorg/jruby/RubyRegexp;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         1: .line 955
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* arg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            new org.jruby.util.RegexpOptions
            dup
            invokespecial org.jruby.util.RegexpOptions.<init>:()V
            invokevirtual org.jruby.RubyRegexp.regexpInitializeString:(Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyRegexp;
            0    2     1   arg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"initialize"}, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
    MethodParameters:
      Name  Flags
      arg   

  public org.jruby.runtime.builtin.IRubyObject initialize_m(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg1
         0: .line 960
            aload 1 /* arg0 */
            instanceof org.jruby.RubyRegexp
            ifeq 3
            getstatic org.jruby.util.cli.Options.PARSER_WARN_FLAGS_IGNORED:Lcom/headius/options/Option;
            invokevirtual com.headius.options.Option.load:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 3
         1: .line 961
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.REGEXP_IGNORED_FLAGS:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "flags ignored"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
         2: .line 962
            aload 0 /* this */
            aload 1 /* arg0 */
            checkcast org.jruby.RubyRegexp
            invokevirtual org.jruby.RubyRegexp.initializeByRegexp:(Lorg/jruby/RubyRegexp;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 965
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* arg0 */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
         4: .line 966
            aload 2 /* arg1 */
            invokestatic org.jruby.RubyRegexp.objectAsJoniOptions:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.util.RegexpOptions.fromJoniOptions:(I)Lorg/jruby/util/RegexpOptions;
         5: .line 965
            invokevirtual org.jruby.RubyRegexp.regexpInitializeString:(Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/jruby/RubyRegexp;
            0    6     1  arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    6     2  arg1  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"initialize"}, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
    MethodParameters:
      Name  Flags
      arg0  
      arg1  

  public org.jruby.runtime.builtin.IRubyObject initialize_m(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 3 // org.jruby.runtime.builtin.IRubyObject arg2
         0: .line 971
            aload 1 /* arg0 */
            instanceof org.jruby.RubyRegexp
            ifeq 3
            getstatic org.jruby.util.cli.Options.PARSER_WARN_FLAGS_IGNORED:Lcom/headius/options/Option;
            invokevirtual com.headius.options.Option.load:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 3
         1: .line 972
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.REGEXP_IGNORED_FLAGS:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "flags ignored"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
         2: .line 973
            aload 0 /* this */
            aload 1 /* arg0 */
            checkcast org.jruby.RubyRegexp
            invokevirtual org.jruby.RubyRegexp.initializeByRegexp:(Lorg/jruby/RubyRegexp;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 976
      StackMap locals:
      StackMap stack:
            aload 2 /* arg1 */
            invokestatic org.jruby.RubyRegexp.objectAsJoniOptions:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.util.RegexpOptions.fromJoniOptions:(I)Lorg/jruby/util/RegexpOptions;
            astore 4 /* newOptions */
        start local 4 // org.jruby.util.RegexpOptions newOptions
         4: .line 978
            aload 3 /* arg2 */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 10
         5: .line 979
            aload 3 /* arg2 */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 5 /* kcodeBytes */
        start local 5 // org.jruby.util.ByteList kcodeBytes
         6: .line 980
            aload 5 /* kcodeBytes */
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            ifle 9
            aload 5 /* kcodeBytes */
            iconst_0
            invokevirtual org.jruby.util.ByteList.get:(I)I
            bipush 110
            if_icmpeq 7
            aload 5 /* kcodeBytes */
            iconst_0
            invokevirtual org.jruby.util.ByteList.get:(I)I
            bipush 78
            if_icmpne 9
         7: .line 981
      StackMap locals: org.jruby.util.RegexpOptions org.jruby.util.ByteList
      StackMap stack:
            aload 4 /* newOptions */
            iconst_1
            invokevirtual org.jruby.util.RegexpOptions.setEncodingNone:(Z)V
         8: .line 982
            aload 0 /* this */
            aload 1 /* arg0 */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
            aload 4 /* newOptions */
            invokevirtual org.jruby.RubyRegexp.regexpInitialize:(Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            areturn
         9: .line 984
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            new java.lang.StringBuilder
            dup
            ldc "encoding option is ignored - "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* kcodeBytes */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.common.RubyWarnings.warn:(Ljava/lang/String;)V
        end local 5 // org.jruby.util.ByteList kcodeBytes
        10: .line 987
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* arg0 */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            aload 4 /* newOptions */
            invokevirtual org.jruby.RubyRegexp.regexpInitializeString:(Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            areturn
        end local 4 // org.jruby.util.RegexpOptions newOptions
        end local 3 // org.jruby.runtime.builtin.IRubyObject arg2
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Lorg/jruby/RubyRegexp;
            0   11     1        arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0   11     2        arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0   11     3        arg2  Lorg/jruby/runtime/builtin/IRubyObject;
            4   11     4  newOptions  Lorg/jruby/util/RegexpOptions;
            6   10     5  kcodeBytes  Lorg/jruby/util/ByteList;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"initialize"}, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
    MethodParameters:
      Name  Flags
      arg0  
      arg1  
      arg2  

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

  public org.jruby.runtime.builtin.IRubyObject initialize_m19(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg1
         0: .line 997
            aload 0 /* this */
            aload 1 /* arg0 */
            aload 2 /* arg1 */
            invokevirtual org.jruby.RubyRegexp.initialize_m:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyRegexp;
            0    1     1  arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2  arg1  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      arg0  
      arg1  

  public org.jruby.runtime.builtin.IRubyObject initialize_m19(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 3 // org.jruby.runtime.builtin.IRubyObject arg2
         0: .line 1002
            aload 0 /* this */
            aload 1 /* arg0 */
            aload 2 /* arg1 */
            aload 3 /* arg2 */
            invokevirtual org.jruby.RubyRegexp.initialize_m:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject arg2
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyRegexp;
            0    1     1  arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2  arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3  arg2  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      arg0  
      arg1  
      arg2  

  private org.jruby.runtime.builtin.IRubyObject initializeByRegexp(org.jruby.RubyRegexp);
    descriptor: (Lorg/jruby/RubyRegexp;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.RubyRegexp regexp
         0: .line 1008
            aload 1 /* regexp */
            invokevirtual org.jruby.RubyRegexp.getOptions:()Lorg/jruby/util/RegexpOptions;
            invokevirtual org.jruby.util.RegexpOptions.clone:()Lorg/jruby/util/RegexpOptions;
            astore 2 /* newOptions */
        start local 2 // org.jruby.util.RegexpOptions newOptions
         1: .line 1009
            aload 2 /* newOptions */
            iconst_0
            invokevirtual org.jruby.util.RegexpOptions.setLiteral:(Z)V
         2: .line 1010
            aload 0 /* this */
            aload 1 /* regexp */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            aload 1 /* regexp */
            invokevirtual org.jruby.RubyRegexp.getEncoding:()Lorg/jcodings/Encoding;
            aload 2 /* newOptions */
            invokevirtual org.jruby.RubyRegexp.regexpInitialize:(Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            areturn
        end local 2 // org.jruby.util.RegexpOptions newOptions
        end local 1 // org.jruby.RubyRegexp regexp
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/jruby/RubyRegexp;
            0    3     1      regexp  Lorg/jruby/RubyRegexp;
            1    3     2  newOptions  Lorg/jruby/util/RegexpOptions;
    MethodParameters:
        Name  Flags
      regexp  

  private org.jruby.RubyRegexp regexpInitializeString(org.jruby.RubyString, org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.RubyString str
        start local 2 // org.jruby.util.RegexpOptions options
         0: .line 1015
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.isLiteral:()Z
            ifeq 1
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            ldc "can't modify literal regexp"
            invokevirtual org.jruby.Ruby.newSecurityError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         1: .line 1016
      StackMap locals:
      StackMap stack:
            aload 1 /* str */
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 3 /* bytes */
        start local 3 // org.jruby.util.ByteList bytes
         2: .line 1017
            aload 3 /* bytes */
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            astore 4 /* enc */
        start local 4 // org.jcodings.Encoding enc
         3: .line 1018
            aload 2 /* options */
            invokevirtual org.jruby.util.RegexpOptions.isEncodingNone:()Z
            ifeq 8
         4: .line 1019
            aload 4 /* enc */
            getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
            if_acmpeq 8
         5: .line 1020
            aload 1 /* str */
            invokevirtual org.jruby.RubyString.scanForCodeRange:()I
            bipush 16
            if_icmpeq 7
         6: .line 1021
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            aload 3 /* bytes */
            aload 4 /* enc */
            aload 2 /* options */
            ldc "/.../n has a non escaped non ASCII character in non ASCII-8BIT script"
            invokestatic org.jruby.util.RegexpSupport.raiseRegexpError19:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;Ljava/lang/String;)V
         7: .line 1023
      StackMap locals: org.jruby.util.ByteList org.jcodings.Encoding
      StackMap stack:
            getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
            astore 4 /* enc */
         8: .line 1026
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* bytes */
            aload 4 /* enc */
            aload 2 /* options */
            invokevirtual org.jruby.RubyRegexp.regexpInitialize:(Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            areturn
        end local 4 // org.jcodings.Encoding enc
        end local 3 // org.jruby.util.ByteList bytes
        end local 2 // org.jruby.util.RegexpOptions options
        end local 1 // org.jruby.RubyString str
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/jruby/RubyRegexp;
            0    9     1      str  Lorg/jruby/RubyString;
            0    9     2  options  Lorg/jruby/util/RegexpOptions;
            2    9     3    bytes  Lorg/jruby/util/ByteList;
            3    9     4      enc  Lorg/jcodings/Encoding;
    MethodParameters:
         Name  Flags
      str      
      options  

  public final org.jruby.RubyRegexp regexpInitialize(org.jruby.util.ByteList, org.jcodings.Encoding, org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=5, locals=7, args_size=4
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.util.ByteList bytes
        start local 2 // org.jcodings.Encoding enc
        start local 3 // org.jruby.util.RegexpOptions options
         0: .line 1031
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         1: .line 1032
            aload 0 /* this */
            aload 3 /* options */
            putfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
         2: .line 1034
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.checkFrozen:()V
         3: .line 1037
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            ifnull 4
            aload 4 /* runtime */
            ldc "already initialized regexp"
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         4: .line 1038
      StackMap locals: org.jruby.Ruby
      StackMap stack:
            aload 2 /* enc */
            invokevirtual org.jcodings.Encoding.isDummy:()Z
            ifeq 5
            aload 4 /* runtime */
            aload 1 /* bytes */
            aload 2 /* enc */
            aload 3 /* options */
            ldc "can't make regexp with dummy encoding"
            invokestatic org.jruby.util.RegexpSupport.raiseRegexpError19:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;Ljava/lang/String;)V
         5: .line 1040
      StackMap locals:
      StackMap stack:
            iconst_1
            anewarray org.jcodings.Encoding
            astore 5 /* fixedEnc */
        start local 5 // org.jcodings.Encoding[] fixedEnc
         6: .line 1041
            aload 4 /* runtime */
            aload 1 /* bytes */
            aload 2 /* enc */
            aload 5 /* fixedEnc */
            getstatic org.jruby.util.RegexpSupport$ErrorMode.RAISE:Lorg/jruby/util/RegexpSupport$ErrorMode;
            invokestatic org.jruby.util.RegexpSupport.preprocess:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;[Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpSupport$ErrorMode;)Lorg/jruby/util/ByteList;
            astore 6 /* unescaped */
        start local 6 // org.jruby.util.ByteList unescaped
         7: .line 1042
            aload 5 /* fixedEnc */
            iconst_0
            aaload
            ifnull 15
         8: .line 1043
            aload 5 /* fixedEnc */
            iconst_0
            aaload
            aload 2 /* enc */
            if_acmpeq 9
            aload 3 /* options */
            invokevirtual org.jruby.util.RegexpOptions.isFixed:()Z
            ifne 10
         9: .line 1044
      StackMap locals: org.jcodings.Encoding[] org.jruby.util.ByteList
      StackMap stack:
            aload 5 /* fixedEnc */
            iconst_0
            aaload
            getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
            if_acmpeq 11
            aload 3 /* options */
            invokevirtual org.jruby.util.RegexpOptions.isEncodingNone:()Z
            ifeq 11
        10: .line 1045
      StackMap locals:
      StackMap stack:
            aload 4 /* runtime */
            aload 1 /* bytes */
            aload 2 /* enc */
            aload 3 /* options */
            ldc "incompatible character encoding"
            invokestatic org.jruby.util.RegexpSupport.raiseRegexpError19:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;Ljava/lang/String;)V
        11: .line 1047
      StackMap locals:
      StackMap stack:
            aload 5 /* fixedEnc */
            iconst_0
            aaload
            getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
            if_acmpeq 17
        12: .line 1048
            aload 3 /* options */
            iconst_1
            invokevirtual org.jruby.util.RegexpOptions.setFixed:(Z)V
        13: .line 1049
            aload 5 /* fixedEnc */
            iconst_0
            aaload
            astore 2 /* enc */
        14: .line 1051
            goto 17
      StackMap locals:
      StackMap stack:
        15: aload 3 /* options */
            invokevirtual org.jruby.util.RegexpOptions.isFixed:()Z
            ifne 17
        16: .line 1052
            getstatic org.jcodings.specific.USASCIIEncoding.INSTANCE:Lorg/jcodings/specific/USASCIIEncoding;
            astore 2 /* enc */
        17: .line 1055
      StackMap locals:
      StackMap stack:
            aload 5 /* fixedEnc */
            iconst_0
            aaload
            ifnull 18
            aload 3 /* options */
            iconst_1
            invokevirtual org.jruby.util.RegexpOptions.setFixed:(Z)V
        18: .line 1056
      StackMap locals:
      StackMap stack:
            aload 3 /* options */
            invokevirtual org.jruby.util.RegexpOptions.isEncodingNone:()Z
            ifeq 19
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.setEncodingNone:()V
        19: .line 1058
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* runtime */
            aload 6 /* unescaped */
            aload 2 /* enc */
            aload 3 /* options */
            invokestatic org.jruby.RubyRegexp.getRegexpFromCache:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Lorg/jruby/util/RegexpOptions;)Lorg/joni/Regex;
            putfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
        20: .line 1059
            getstatic org.jruby.RubyRegexp.$assertionsDisabled:Z
            ifne 21
            aload 1 /* bytes */
            ifnonnull 21
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        21: .line 1060
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* bytes */
            putfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
        22: .line 1061
            aload 0 /* this */
            areturn
        end local 6 // org.jruby.util.ByteList unescaped
        end local 5 // org.jcodings.Encoding[] fixedEnc
        end local 4 // org.jruby.Ruby runtime
        end local 3 // org.jruby.util.RegexpOptions options
        end local 2 // org.jcodings.Encoding enc
        end local 1 // org.jruby.util.ByteList bytes
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   23     0       this  Lorg/jruby/RubyRegexp;
            0   23     1      bytes  Lorg/jruby/util/ByteList;
            0   23     2        enc  Lorg/jcodings/Encoding;
            0   23     3    options  Lorg/jruby/util/RegexpOptions;
            1   23     4    runtime  Lorg/jruby/Ruby;
            6   23     5   fixedEnc  [Lorg/jcodings/Encoding;
            7   23     6  unescaped  Lorg/jruby/util/ByteList;
    MethodParameters:
         Name  Flags
      bytes    
      enc      
      options  

  public org.jruby.RubyFixnum hash();
    descriptor: ()Lorg/jruby/RubyFixnum;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 1067
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.check:()V
         1: .line 1068
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            invokevirtual org.joni.Regex.getOptions:()I
            istore 1 /* hash */
        start local 1 // int hash
         2: .line 1069
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            istore 2 /* len */
        start local 2 // int len
         3: .line 1070
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            istore 3 /* p */
        start local 3 // int p
         4: .line 1071
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            astore 4 /* bytes */
        start local 4 // byte[] bytes
         5: .line 1072
            goto 7
         6: .line 1073
      StackMap locals: org.jruby.RubyRegexp int int int byte[]
      StackMap stack:
            iload 1 /* hash */
            bipush 33
            imul
            aload 4 /* bytes */
            iload 3 /* p */
            iinc 3 /* p */ 1
            baload
            iadd
            istore 1 /* hash */
         7: .line 1072
      StackMap locals:
      StackMap stack:
            iload 2 /* len */
            iinc 2 /* len */ -1
            ifgt 6
         8: .line 1075
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            iload 1 /* hash */
            iload 1 /* hash */
            iconst_5
            ishr
            iadd
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            areturn
        end local 4 // byte[] bytes
        end local 3 // int p
        end local 2 // int len
        end local 1 // int hash
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Lorg/jruby/RubyRegexp;
            2    9     1   hash  I
            3    9     2    len  I
            4    9     3      p  I
            5    9     4  bytes  [B
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()

  public org.jruby.runtime.builtin.IRubyObject op_equal(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 1081
            aload 0 /* this */
            aload 2 /* other */
            if_acmpne 2
         1: .line 1082
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
            areturn
         2: .line 1084
      StackMap locals:
      StackMap stack:
            aload 2 /* other */
            instanceof org.jruby.RubyRegexp
            ifne 4
         3: .line 1085
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
         4: .line 1087
      StackMap locals:
      StackMap stack:
            aload 2 /* other */
            checkcast org.jruby.RubyRegexp
            astore 3 /* otherRegex */
        start local 3 // org.jruby.RubyRegexp otherRegex
         5: .line 1089
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.check:()V
         6: .line 1090
            aload 3 /* otherRegex */
            invokevirtual org.jruby.RubyRegexp.check:()V
         7: .line 1092
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            aload 3 /* otherRegex */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.equal:(Lorg/jruby/util/ByteList;)Z
            ifeq 8
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            aload 3 /* otherRegex */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            invokevirtual org.jruby.util.RegexpOptions.equals:(Ljava/lang/Object;)Z
            ifeq 8
            iconst_1
            goto 9
      StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.RubyRegexp
      StackMap stack: org.jruby.runtime.ThreadContext
         8: iconst_0
      StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.RubyRegexp
      StackMap stack: org.jruby.runtime.ThreadContext int
         9: invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 3 // org.jruby.RubyRegexp otherRegex
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/jruby/RubyRegexp;
            0   10     1     context  Lorg/jruby/runtime/ThreadContext;
            0   10     2       other  Lorg/jruby/runtime/builtin/IRubyObject;
            5   10     3  otherRegex  Lorg/jruby/RubyRegexp;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"==", "eql?"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      other    

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

  public org.jruby.runtime.builtin.IRubyObject op_match2(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1102
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 1103
            aload 1 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getLastLine:()Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* line */
        start local 3 // org.jruby.runtime.builtin.IRubyObject line
         2: .line 1104
            aload 3 /* line */
            instanceof org.jruby.RubyString
            ifeq 6
         3: .line 1105
            aload 0 /* this */
            aload 1 /* context */
            aload 3 /* line */
            checkcast org.jruby.RubyString
            iconst_0
            iconst_0
            invokevirtual org.jruby.RubyRegexp.search:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ)I
            istore 4 /* start */
        start local 4 // int start
         4: .line 1106
            iload 4 /* start */
            ifge 5
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         5: .line 1107
      StackMap locals: org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject int
      StackMap stack:
            aload 2 /* runtime */
            iload 4 /* start */
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            areturn
        end local 4 // int start
         6: .line 1109
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.runtime.ThreadContext.setBackRef:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         7: .line 1110
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject line
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/RubyRegexp;
            0    8     1  context  Lorg/jruby/runtime/ThreadContext;
            1    8     2  runtime  Lorg/jruby/Ruby;
            2    8     3     line  Lorg/jruby/runtime/builtin/IRubyObject;
            4    6     4    start  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"~"}, reads = {org.jruby.anno.FrameField.LASTLINE:Lorg/jruby/anno/FrameField;, org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;}, writes = {org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject eqq(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.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 1118
            aload 2 /* arg */
            invokestatic org.jruby.RubyRegexp.operandNoCheck:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 2 /* arg */
         1: .line 1119
            aload 2 /* arg */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 4
         2: .line 1120
            aload 1 /* context */
            aload 2 /* arg */
            invokevirtual org.jruby.runtime.ThreadContext.setBackRef:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         3: .line 1121
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
         4: .line 1123
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* arg */
            checkcast org.jruby.RubyString
            iconst_0
            iconst_0
            invokevirtual org.jruby.RubyRegexp.search:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ)I
            istore 3 /* start */
        start local 3 // int start
         5: .line 1124
            iload 3 /* start */
            ifge 6
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            goto 7
      StackMap locals: int
      StackMap stack:
         6: aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
      StackMap locals:
      StackMap stack: org.jruby.RubyBoolean
         7: areturn
        end local 3 // int start
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/RubyRegexp;
            0    8     1  context  Lorg/jruby/runtime/ThreadContext;
            0    8     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
            5    8     3    start  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"==="}, required = 1, writes = {org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;})
    MethodParameters:
         Name  Flags
      context  
      arg      

  public org.jruby.runtime.builtin.IRubyObject eqq19(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.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 1129
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* arg */
            invokevirtual org.jruby.RubyRegexp.eqq:(Lorg/jruby/runtime/ThreadContext;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.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRegexp;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      arg      

  public org.jruby.runtime.builtin.IRubyObject op_match(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject str
         0: .line 1137
            iconst_1
            anewarray org.jruby.RubyString
            astore 3 /* strp */
        start local 3 // org.jruby.RubyString[] strp
         1: .line 1138
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* str */
            aload 3 /* strp */
            aconst_null
            iconst_0
            invokevirtual org.jruby.RubyRegexp.matchPos:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/RubyString;[Lorg/jruby/runtime/builtin/IRubyObject;I)I
            istore 4 /* pos */
        start local 4 // int pos
         2: .line 1139
            iload 4 /* pos */
            ifge 3
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 1140
      StackMap locals: org.jruby.RubyString[] int
      StackMap stack:
            aload 3 /* strp */
            iconst_0
            aaload
            iload 4 /* pos */
            invokevirtual org.jruby.RubyString.subLength:(I)I
            istore 4 /* pos */
         4: .line 1141
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            iload 4 /* pos */
            i2l
            invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
            areturn
        end local 4 // int pos
        end local 3 // org.jruby.RubyString[] strp
        end local 2 // org.jruby.runtime.builtin.IRubyObject str
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/RubyRegexp;
            0    5     1  context  Lorg/jruby/runtime/ThreadContext;
            0    5     2      str  Lorg/jruby/runtime/builtin/IRubyObject;
            1    5     3     strp  [Lorg/jruby/RubyString;
            2    5     4      pos  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"=~"}, required = 1, writes = {org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;}, reads = {org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;})
    MethodParameters:
         Name  Flags
      context  
      str      

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

  public org.jruby.runtime.builtin.IRubyObject match_m(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.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject str
        start local 3 // org.jruby.runtime.Block block
         0: .line 1154
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* str */
            iconst_0
            iconst_1
            aload 3 /* block */
            invokevirtual org.jruby.RubyRegexp.matchCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;IZLorg/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 str
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRegexp;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      str  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"match"}, reads = {org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;})
    MethodParameters:
         Name  Flags
      context  
      str      
      block    

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

  public final org.jruby.runtime.builtin.IRubyObject match_m(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject str
        start local 3 // boolean useBackref
         0: .line 1163
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* str */
            iconst_0
            iload 3 /* useBackref */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.RubyRegexp.matchCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;IZLorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // boolean useBackref
        end local 2 // org.jruby.runtime.builtin.IRubyObject str
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/jruby/RubyRegexp;
            0    1     1     context  Lorg/jruby/runtime/ThreadContext;
            0    1     2         str  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3  useBackref  Z
    MethodParameters:
            Name  Flags
      context     
      str         
      useBackref  

  public org.jruby.runtime.builtin.IRubyObject match_m19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, boolean, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;ZLorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject str
        start local 3 // boolean useBackref
        start local 4 // org.jruby.runtime.Block block
         0: .line 1168
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* str */
            iconst_0
            iload 3 /* useBackref */
            aload 4 /* block */
            invokevirtual org.jruby.RubyRegexp.matchCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;IZLorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // org.jruby.runtime.Block block
        end local 3 // boolean useBackref
        end local 2 // org.jruby.runtime.builtin.IRubyObject str
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/jruby/RubyRegexp;
            0    1     1     context  Lorg/jruby/runtime/ThreadContext;
            0    1     2         str  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3  useBackref  Z
            0    1     4       block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      context     
      str         
      useBackref  
      block       

  public org.jruby.runtime.builtin.IRubyObject match_m(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject str
        start local 3 // org.jruby.runtime.builtin.IRubyObject pos
        start local 4 // org.jruby.runtime.Block block
         0: .line 1173
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* str */
            aload 3 /* pos */
            invokestatic org.jruby.RubyNumeric.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            iconst_1
            aload 4 /* block */
            invokevirtual org.jruby.RubyRegexp.matchCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;IZLorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // org.jruby.runtime.Block block
        end local 3 // org.jruby.runtime.builtin.IRubyObject pos
        end local 2 // org.jruby.runtime.builtin.IRubyObject str
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRegexp;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      str  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3      pos  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     4    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"match"}, reads = {org.jruby.anno.FrameField.BACKREF:Lorg/jruby/anno/FrameField;})
    MethodParameters:
         Name  Flags
      context  
      str      
      pos      
      block    

  public org.jruby.runtime.builtin.IRubyObject match_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.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject str
         0: .line 1178
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* str */
            iconst_0
            invokevirtual org.jruby.RubyRegexp.matchP:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;I)Lorg/jruby/RubyBoolean;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject str
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRegexp;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      str  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"match?"})
    MethodParameters:
         Name  Flags
      context  
      str      

  public org.jruby.runtime.builtin.IRubyObject match_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject str
        start local 3 // org.jruby.runtime.builtin.IRubyObject pos
         0: .line 1183
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* str */
            aload 3 /* pos */
            invokestatic org.jruby.RubyNumeric.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokevirtual org.jruby.RubyRegexp.matchP:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;I)Lorg/jruby/RubyBoolean;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject pos
        end local 2 // org.jruby.runtime.builtin.IRubyObject str
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRegexp;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      str  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3      pos  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"match?"})
    MethodParameters:
         Name  Flags
      context  
      str      
      pos      

  private org.jruby.runtime.builtin.IRubyObject matchCommon(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, int, boolean, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;IZLorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=8, args_size=6
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject str
        start local 3 // int pos
        start local 4 // boolean setBackref
        start local 5 // org.jruby.runtime.Block block
         0: .line 1187
            iload 4 /* setBackref */
            ifeq 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
            anewarray org.jruby.runtime.builtin.IRubyObject
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject[]
         2: astore 6 /* holder */
        start local 6 // org.jruby.runtime.builtin.IRubyObject[] holder
         3: .line 1188
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* str */
            aconst_null
            aload 6 /* holder */
            iload 3 /* pos */
            invokevirtual org.jruby.RubyRegexp.matchPos:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/RubyString;[Lorg/jruby/runtime/builtin/IRubyObject;I)I
            ifge 5
         4: .line 1189
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         5: .line 1192
      StackMap locals: org.jruby.runtime.builtin.IRubyObject[]
      StackMap stack:
            aload 1 /* context */
            aload 6 /* holder */
            invokestatic org.jruby.RubyRegexp.getBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 7 /* backref */
        start local 7 // org.jruby.runtime.builtin.IRubyObject backref
         6: .line 1193
            aload 5 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 7
            aload 5 /* block */
            aload 1 /* context */
            aload 7 /* backref */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         7: .line 1194
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 7 /* backref */
            areturn
        end local 7 // org.jruby.runtime.builtin.IRubyObject backref
        end local 6 // org.jruby.runtime.builtin.IRubyObject[] holder
        end local 5 // org.jruby.runtime.Block block
        end local 4 // boolean setBackref
        end local 3 // int pos
        end local 2 // org.jruby.runtime.builtin.IRubyObject str
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        this  Lorg/jruby/RubyRegexp;
            0    8     1     context  Lorg/jruby/runtime/ThreadContext;
            0    8     2         str  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     3         pos  I
            0    8     4  setBackref  Z
            0    8     5       block  Lorg/jruby/runtime/Block;
            3    8     6      holder  [Lorg/jruby/runtime/builtin/IRubyObject;
            6    8     7     backref  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
            Name  Flags
      context     
      str         
      pos         
      setBackref  
      block       

  private int matchPos(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.RubyString[], org.jruby.runtime.builtin.IRubyObject[], int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/RubyString;[Lorg/jruby/runtime/builtin/IRubyObject;I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=7, args_size=6
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
        start local 3 // org.jruby.RubyString[] strp
        start local 4 // org.jruby.runtime.builtin.IRubyObject[] holder
        start local 5 // int pos
         0: .line 1207
            aload 2 /* arg */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 3
         1: .line 1208
            aload 1 /* context */
            aload 4 /* holder */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyRegexp.setBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         2: .line 1209
            iconst_m1
            ireturn
         3: .line 1211
      StackMap locals:
      StackMap stack:
            aload 2 /* arg */
            invokestatic org.jruby.RubyRegexp.operandCheck:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            astore 6 /* str */
        start local 6 // org.jruby.RubyString str
         4: .line 1212
            aload 3 /* strp */
            ifnull 5
            aload 3 /* strp */
            iconst_0
            aload 6 /* str */
            aastore
         5: .line 1213
      StackMap locals: org.jruby.RubyString
      StackMap stack:
            iload 5 /* pos */
            ifeq 10
         6: .line 1214
            iload 5 /* pos */
            ifge 9
         7: .line 1215
            iload 5 /* pos */
            aload 6 /* str */
            invokevirtual org.jruby.RubyString.strLength:()I
            iadd
            istore 5 /* pos */
         8: .line 1216
            iload 5 /* pos */
            ifge 9
            iload 5 /* pos */
            ireturn
         9: .line 1218
      StackMap locals:
      StackMap stack:
            aload 6 /* str */
            iload 5 /* pos */
            invokevirtual org.jruby.RubyString.rbStrOffset:(I)I
            istore 5 /* pos */
        10: .line 1220
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 6 /* str */
            iload 5 /* pos */
            iconst_0
            aload 4 /* holder */
            invokevirtual org.jruby.RubyRegexp.search:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ[Lorg/jruby/runtime/builtin/IRubyObject;)I
            ireturn
        end local 6 // org.jruby.RubyString str
        end local 5 // int pos
        end local 4 // org.jruby.runtime.builtin.IRubyObject[] holder
        end local 3 // org.jruby.RubyString[] strp
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lorg/jruby/RubyRegexp;
            0   11     1  context  Lorg/jruby/runtime/ThreadContext;
            0   11     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
            0   11     3     strp  [Lorg/jruby/RubyString;
            0   11     4   holder  [Lorg/jruby/runtime/builtin/IRubyObject;
            0   11     5      pos  I
            4   11     6      str  Lorg/jruby/RubyString;
    MethodParameters:
         Name  Flags
      context  
      arg      
      strp     
      holder   
      pos      

  private org.jruby.RubyBoolean matchP(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;I)Lorg/jruby/RubyBoolean;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=10, args_size=4
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
        start local 3 // int pos
         0: .line 1224
            aload 2 /* arg */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 1
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
         1: .line 1225
      StackMap locals:
      StackMap stack:
            aload 2 /* arg */
            instanceof org.jruby.RubySymbol
            ifeq 2
            aload 2 /* arg */
            checkcast org.jruby.RubySymbol
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.RubySymbol.to_s:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 2 /* arg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
      StackMap locals:
      StackMap stack: org.jruby.RubyString
         3: astore 4 /* str */
        start local 4 // org.jruby.RubyString str
         4: .line 1227
            iload 3 /* pos */
            ifeq 9
         5: .line 1228
            iload 3 /* pos */
            ifge 8
         6: .line 1229
            iload 3 /* pos */
            aload 4 /* str */
            invokevirtual org.jruby.RubyString.strLength:()I
            iadd
            istore 3 /* pos */
         7: .line 1230
            iload 3 /* pos */
            ifge 8
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
         8: .line 1232
      StackMap locals: org.jruby.RubyString
      StackMap stack:
            aload 4 /* str */
            iload 3 /* pos */
            invokevirtual org.jruby.RubyString.rbStrOffset:(I)I
            istore 3 /* pos */
         9: .line 1235
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* str */
            invokevirtual org.jruby.RubyRegexp.preparePattern:(Lorg/jruby/RubyString;)Lorg/joni/Regex;
            astore 5 /* reg */
        start local 5 // org.joni.Regex reg
        10: .line 1236
            aload 4 /* str */
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 6 /* strBL */
        start local 6 // org.jruby.util.ByteList strBL
        11: .line 1237
            aload 6 /* strBL */
            invokevirtual org.jruby.util.ByteList.begin:()I
            istore 7 /* beg */
        start local 7 // int beg
        12: .line 1239
            aload 5 /* reg */
            aload 6 /* strBL */
            invokevirtual org.jruby.util.ByteList.unsafeBytes:()[B
            iload 7 /* beg */
            iload 7 /* beg */
            aload 6 /* strBL */
            invokevirtual org.jruby.util.ByteList.realSize:()I
            iadd
            invokevirtual org.joni.Regex.matcherNoRegion:([BII)Lorg/joni/Matcher;
            astore 8 /* matcher */
        start local 8 // org.joni.Matcher matcher
        13: .line 1242
            aload 1 /* context */
            aload 8 /* matcher */
            iload 7 /* beg */
            iload 3 /* pos */
            iadd
            iload 7 /* beg */
            aload 6 /* strBL */
            invokevirtual org.jruby.util.ByteList.realSize:()I
            iadd
            iconst_0
            invokestatic org.jruby.RubyRegexp.matcherSearch:(Lorg/jruby/runtime/ThreadContext;Lorg/joni/Matcher;III)I
            istore 9 /* result */
        start local 9 // int result
        14: .line 1243
            iload 9 /* result */
            iconst_m1
            if_icmpne 15
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            goto 16
      StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject int org.jruby.RubyString org.joni.Regex org.jruby.util.ByteList int org.joni.Matcher int
      StackMap stack:
        15: aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
      StackMap locals:
      StackMap stack: org.jruby.RubyBoolean
        16: areturn
        end local 9 // int result
        17: .line 1244
      StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject int org.jruby.RubyString org.joni.Regex org.jruby.util.ByteList int org.joni.Matcher
      StackMap stack: org.joni.exception.JOniException
            astore 9 /* je */
        start local 9 // org.joni.exception.JOniException je
        18: .line 1245
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 9 /* je */
            invokevirtual org.joni.exception.JOniException.getMessage:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 9 // org.joni.exception.JOniException je
        end local 8 // org.joni.Matcher matcher
        end local 7 // int beg
        end local 6 // org.jruby.util.ByteList strBL
        end local 5 // org.joni.Regex reg
        end local 4 // org.jruby.RubyString str
        end local 3 // int pos
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   19     0     this  Lorg/jruby/RubyRegexp;
            0   19     1  context  Lorg/jruby/runtime/ThreadContext;
            0   19     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
            0   19     3      pos  I
            4   19     4      str  Lorg/jruby/RubyString;
           10   19     5      reg  Lorg/joni/Regex;
           11   19     6    strBL  Lorg/jruby/util/ByteList;
           12   19     7      beg  I
           13   19     8  matcher  Lorg/joni/Matcher;
           14   17     9   result  I
           18   19     9       je  Lorg/joni/exception/JOniException;
      Exception table:
        from    to  target  type
          13    16      17  Class org.joni.exception.JOniException
    MethodParameters:
         Name  Flags
      context  
      arg      
      pos      

  public final int search(org.jruby.runtime.ThreadContext, org.jruby.RubyString, int, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ)I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.RubyString str
        start local 3 // int pos
        start local 4 // boolean reverse
         0: .line 1255
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* str */
            iload 3 /* pos */
            iload 4 /* reverse */
            aconst_null
            invokevirtual org.jruby.RubyRegexp.search:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ[Lorg/jruby/runtime/builtin/IRubyObject;)I
            ireturn
        end local 4 // boolean reverse
        end local 3 // int pos
        end local 2 // org.jruby.RubyString str
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRegexp;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      str  Lorg/jruby/RubyString;
            0    1     3      pos  I
            0    1     4  reverse  Z
    MethodParameters:
         Name  Flags
      context  
      str      
      pos      
      reverse  

  public final int search19(org.jruby.runtime.ThreadContext, org.jruby.RubyString, int, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ)I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.RubyString str
        start local 3 // int pos
        start local 4 // boolean reverse
         0: .line 1260
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* str */
            iload 3 /* pos */
            iload 4 /* reverse */
            invokevirtual org.jruby.RubyRegexp.search:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ)I
            ireturn
        end local 4 // boolean reverse
        end local 3 // int pos
        end local 2 // org.jruby.RubyString str
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRegexp;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      str  Lorg/jruby/RubyString;
            0    1     3      pos  I
            0    1     4  reverse  Z
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      str      
      pos      
      reverse  

  public final int search19(org.jruby.runtime.ThreadContext, org.jruby.RubyString, int, boolean, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ[Lorg/jruby/runtime/builtin/IRubyObject;)I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=6, locals=6, args_size=6
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.RubyString str
        start local 3 // int pos
        start local 4 // boolean reverse
        start local 5 // org.jruby.runtime.builtin.IRubyObject[] holder
         0: .line 1265
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* str */
            iload 3 /* pos */
            iload 4 /* reverse */
            aload 5 /* holder */
            invokevirtual org.jruby.RubyRegexp.search:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ[Lorg/jruby/runtime/builtin/IRubyObject;)I
            ireturn
        end local 5 // org.jruby.runtime.builtin.IRubyObject[] holder
        end local 4 // boolean reverse
        end local 3 // int pos
        end local 2 // org.jruby.RubyString str
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRegexp;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      str  Lorg/jruby/RubyString;
            0    1     3      pos  I
            0    1     4  reverse  Z
            0    1     5   holder  [Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      str      
      pos      
      reverse  
      holder   

  public final org.jruby.RubyBoolean startWithP(org.jruby.runtime.ThreadContext, org.jruby.RubyString);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;)Lorg/jruby/RubyBoolean;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=5, locals=10, args_size=3
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.RubyString str
         0: .line 1270
            aload 2 /* str */
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 3 /* strBL */
        start local 3 // org.jruby.util.ByteList strBL
         1: .line 1271
            aload 3 /* strBL */
            invokevirtual org.jruby.util.ByteList.begin:()I
            istore 4 /* beg */
        start local 4 // int beg
         2: .line 1272
            aload 0 /* this */
            aload 2 /* str */
            invokevirtual org.jruby.RubyRegexp.preparePattern:(Lorg/jruby/RubyString;)Lorg/joni/Regex;
            astore 5 /* reg */
        start local 5 // org.joni.Regex reg
         3: .line 1274
            aload 1 /* context */
            aconst_null
            invokestatic org.jruby.RubyRegexp.getBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 6 /* match */
        start local 6 // org.jruby.runtime.builtin.IRubyObject match
         4: .line 1275
            aload 6 /* match */
            instanceof org.jruby.RubyMatchData
            ifeq 6
         5: .line 1276
            aload 6 /* match */
            checkcast org.jruby.RubyMatchData
            invokevirtual org.jruby.RubyMatchData.used:()Z
            ifeq 6
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            astore 6 /* match */
         6: .line 1279
      StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.RubyString org.jruby.util.ByteList int org.joni.Regex org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 5 /* reg */
            aload 3 /* strBL */
            invokevirtual org.jruby.util.ByteList.unsafeBytes:()[B
            iload 4 /* beg */
            iload 4 /* beg */
            aload 3 /* strBL */
            invokevirtual org.jruby.util.ByteList.realSize:()I
            iadd
            invokevirtual org.joni.Regex.matcher:([BII)Lorg/joni/Matcher;
            astore 7 /* matcher */
        start local 7 // org.joni.Matcher matcher
         7: .line 1282
            aload 1 /* context */
            aload 7 /* matcher */
            iload 4 /* beg */
            iload 4 /* beg */
            aload 3 /* strBL */
            invokevirtual org.jruby.util.ByteList.realSize:()I
            iadd
            iconst_0
            invokestatic org.jruby.RubyRegexp.matcherMatch:(Lorg/jruby/runtime/ThreadContext;Lorg/joni/Matcher;III)I
            istore 8 /* result */
        start local 8 // int result
         8: .line 1283
            iload 8 /* result */
            iconst_m1
            if_icmpne 12
         9: .line 1284
            aload 1 /* context */
            aconst_null
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyRegexp.setBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
        10: .line 1285
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
        11: areturn
        12: .line 1289
      StackMap locals: org.joni.Matcher int
      StackMap stack:
            aload 6 /* match */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 15
        13: .line 1290
            aload 1 /* context */
            aload 2 /* str */
            aload 7 /* matcher */
            aload 5 /* reg */
            invokestatic org.jruby.RubyRegexp.createMatchData:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/joni/Matcher;Lorg/joni/Regex;)Lorg/jruby/RubyMatchData;
            astore 9 /* matchData */
        start local 9 // org.jruby.RubyMatchData matchData
        14: .line 1291
            goto 16
        end local 9 // org.jruby.RubyMatchData matchData
        15: .line 1292
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 2 /* str */
            aload 7 /* matcher */
            aload 5 /* reg */
            invokestatic org.jruby.RubyRegexp.createMatchData:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/joni/Matcher;Lorg/joni/Regex;)Lorg/jruby/RubyMatchData;
            astore 9 /* matchData */
        start local 9 // org.jruby.RubyMatchData matchData
        16: .line 1294
      StackMap locals: org.jruby.RubyMatchData
      StackMap stack:
            aload 9 /* matchData */
            aload 0 /* this */
            putfield org.jruby.RubyMatchData.regexp:Lorg/jruby/RubyRegexp;
        17: .line 1295
            aload 9 /* matchData */
            aload 0 /* this */
            invokevirtual org.jruby.RubyMatchData.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
            pop
        18: .line 1296
            aload 1 /* context */
            aconst_null
            aload 9 /* matchData */
            invokestatic org.jruby.RubyRegexp.setBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
        19: .line 1297
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
        20: areturn
        end local 9 // org.jruby.RubyMatchData matchData
        end local 8 // int result
        21: .line 1298
      StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.RubyString org.jruby.util.ByteList int org.joni.Regex org.jruby.runtime.builtin.IRubyObject org.joni.Matcher
      StackMap stack: org.joni.exception.JOniException
            astore 8 /* je */
        start local 8 // org.joni.exception.JOniException je
        22: .line 1299
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 8 /* je */
            invokevirtual org.joni.exception.JOniException.getMessage:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 8 // org.joni.exception.JOniException je
        end local 7 // org.joni.Matcher matcher
        end local 6 // org.jruby.runtime.builtin.IRubyObject match
        end local 5 // org.joni.Regex reg
        end local 4 // int beg
        end local 3 // org.jruby.util.ByteList strBL
        end local 2 // org.jruby.RubyString str
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   23     0       this  Lorg/jruby/RubyRegexp;
            0   23     1    context  Lorg/jruby/runtime/ThreadContext;
            0   23     2        str  Lorg/jruby/RubyString;
            1   23     3      strBL  Lorg/jruby/util/ByteList;
            2   23     4        beg  I
            3   23     5        reg  Lorg/joni/Regex;
            4   23     6      match  Lorg/jruby/runtime/builtin/IRubyObject;
            7   23     7    matcher  Lorg/joni/Matcher;
            8   21     8     result  I
           14   15     9  matchData  Lorg/jruby/RubyMatchData;
           16   21     9  matchData  Lorg/jruby/RubyMatchData;
           22   23     8         je  Lorg/joni/exception/JOniException;
      Exception table:
        from    to  target  type
           7    11      21  Class org.joni.exception.JOniException
          12    20      21  Class org.joni.exception.JOniException
    MethodParameters:
         Name  Flags
      context  
      str      

  public final int search(org.jruby.runtime.ThreadContext, org.jruby.RubyString, int, boolean, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;IZ[Lorg/jruby/runtime/builtin/IRubyObject;)I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=5, locals=14, args_size=6
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.RubyString str
        start local 3 // int pos
        start local 4 // boolean reverse
        start local 5 // org.jruby.runtime.builtin.IRubyObject[] holder
         0: .line 1309
            aload 2 /* str */
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 6 /* strBL */
        start local 6 // org.jruby.util.ByteList strBL
         1: .line 1310
            aload 6 /* strBL */
            invokevirtual org.jruby.util.ByteList.begin:()I
            istore 7 /* beg */
        start local 7 // int beg
         2: .line 1311
            iload 7 /* beg */
            istore 8 /* range */
        start local 8 // int range
         3: .line 1313
            iload 3 /* pos */
            aload 2 /* str */
            invokevirtual org.jruby.RubyString.size:()I
            if_icmpgt 4
            iload 3 /* pos */
            ifge 6
         4: .line 1314
      StackMap locals: org.jruby.util.ByteList int int
      StackMap stack:
            aload 1 /* context */
            aload 5 /* holder */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyRegexp.setBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         5: .line 1315
            iconst_m1
            ireturn
         6: .line 1318
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* str */
            invokevirtual org.jruby.RubyRegexp.preparePattern:(Lorg/jruby/RubyString;)Lorg/joni/Regex;
            astore 9 /* reg */
        start local 9 // org.joni.Regex reg
         7: .line 1319
            aload 1 /* context */
            aload 5 /* holder */
            invokestatic org.jruby.RubyRegexp.getBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 10 /* match */
        start local 10 // org.jruby.runtime.builtin.IRubyObject match
         8: .line 1320
            aload 10 /* match */
            instanceof org.jruby.RubyMatchData
            ifeq 11
         9: .line 1321
            aload 10 /* match */
            checkcast org.jruby.RubyMatchData
            invokevirtual org.jruby.RubyMatchData.used:()Z
            ifeq 11
        10: .line 1322
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            astore 10 /* match */
        11: .line 1326
      StackMap locals: org.joni.Regex org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            iload 4 /* reverse */
            ifne 12
            iload 8 /* range */
            aload 2 /* str */
            invokevirtual org.jruby.RubyString.size:()I
            iadd
            istore 8 /* range */
        12: .line 1328
      StackMap locals:
      StackMap stack:
            aload 9 /* reg */
            aload 6 /* strBL */
            invokevirtual org.jruby.util.ByteList.unsafeBytes:()[B
            iload 7 /* beg */
            iload 7 /* beg */
            aload 6 /* strBL */
            invokevirtual org.jruby.util.ByteList.realSize:()I
            iadd
            invokevirtual org.joni.Regex.matcher:([BII)Lorg/joni/Matcher;
            astore 11 /* matcher */
        start local 11 // org.joni.Matcher matcher
        13: .line 1331
            aload 1 /* context */
            aload 11 /* matcher */
            iload 7 /* beg */
            iload 3 /* pos */
            iadd
            iload 8 /* range */
            iconst_0
            invokestatic org.jruby.RubyRegexp.matcherSearch:(Lorg/jruby/runtime/ThreadContext;Lorg/joni/Matcher;III)I
            istore 12 /* result */
        start local 12 // int result
        14: .line 1332
            iload 12 /* result */
            iconst_m1
            if_icmpne 17
        15: .line 1333
            aload 1 /* context */
            aload 5 /* holder */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyRegexp.setBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
        16: .line 1334
            iconst_m1
            ireturn
        17: .line 1338
      StackMap locals: org.joni.Matcher int
      StackMap stack:
            aload 10 /* match */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 20
        18: .line 1339
            aload 1 /* context */
            aload 2 /* str */
            aload 11 /* matcher */
            aload 9 /* reg */
            invokestatic org.jruby.RubyRegexp.createMatchData:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/joni/Matcher;Lorg/joni/Regex;)Lorg/jruby/RubyMatchData;
            astore 13 /* matchData */
        start local 13 // org.jruby.RubyMatchData matchData
        19: .line 1340
            goto 21
        end local 13 // org.jruby.RubyMatchData matchData
        20: .line 1342
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            aload 2 /* str */
            aload 11 /* matcher */
            aload 9 /* reg */
            invokestatic org.jruby.RubyRegexp.createMatchData:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/joni/Matcher;Lorg/joni/Regex;)Lorg/jruby/RubyMatchData;
            astore 13 /* matchData */
        start local 13 // org.jruby.RubyMatchData matchData
        21: .line 1348
      StackMap locals: org.jruby.RubyMatchData
      StackMap stack:
            aload 13 /* matchData */
            aload 0 /* this */
            putfield org.jruby.RubyMatchData.regexp:Lorg/jruby/RubyRegexp;
        22: .line 1349
            aload 13 /* matchData */
            aload 0 /* this */
            invokevirtual org.jruby.RubyMatchData.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
            pop
        23: .line 1350
            aload 1 /* context */
            aload 5 /* holder */
            aload 13 /* matchData */
            invokestatic org.jruby.RubyRegexp.setBackRefInternal:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
        24: .line 1351
            iload 12 /* result */
        25: ireturn
        end local 13 // org.jruby.RubyMatchData matchData
        end local 12 // int result
        26: .line 1352
      StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.RubyString int int org.jruby.runtime.builtin.IRubyObject[] org.jruby.util.ByteList int int org.joni.Regex org.jruby.runtime.builtin.IRubyObject org.joni.Matcher
      StackMap stack: org.joni.exception.JOniException
            astore 12 /* je */
        start local 12 // org.joni.exception.JOniException je
        27: .line 1353
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 12 /* je */
            invokevirtual org.joni.exception.JOniException.getMessage:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newRegexpError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 12 // org.joni.exception.JOniException je
        end local 11 // org.joni.Matcher matcher
        end local 10 // org.jruby.runtime.builtin.IRubyObject match
        end local 9 // org.joni.Regex reg
        end local 8 // int range
        end local 7 // int beg
        end local 6 // org.jruby.util.ByteList strBL
        end local 5 // org.jruby.runtime.builtin.IRubyObject[] holder
        end local 4 // boolean reverse
        end local 3 // int pos
        end local 2 // org.jruby.RubyString str
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   28     0       this  Lorg/jruby/RubyRegexp;
            0   28     1    context  Lorg/jruby/runtime/ThreadContext;
            0   28     2        str  Lorg/jruby/RubyString;
            0   28     3        pos  I
            0   28     4    reverse  Z
            0   28     5     holder  [Lorg/jruby/runtime/builtin/IRubyObject;
            1   28     6      strBL  Lorg/jruby/util/ByteList;
            2   28     7        beg  I
            3   28     8      range  I
            7   28     9        reg  Lorg/joni/Regex;
            8   28    10      match  Lorg/jruby/runtime/builtin/IRubyObject;
           13   28    11    matcher  Lorg/joni/Matcher;
           14   26    12     result  I
           19   20    13  matchData  Lorg/jruby/RubyMatchData;
           21   26    13  matchData  Lorg/jruby/RubyMatchData;
           27   28    12         je  Lorg/joni/exception/JOniException;
      Exception table:
        from    to  target  type
          13    16      26  Class org.joni.exception.JOniException
          17    25      26  Class org.joni.exception.JOniException
    MethodParameters:
         Name  Flags
      context  
      str      
      pos      
      reverse  
      holder   

  private static org.jruby.runtime.builtin.IRubyObject getBackRefInternal(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: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] holder
         0: .line 1358
            aload 1 /* holder */
            ifnull 1
            aload 1 /* holder */
            iconst_0
            aaload
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getBackRef:()Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] holder
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1   holder  [Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      holder   

  private static void setBackRefInternal(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;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] holder
        start local 2 // org.jruby.runtime.builtin.IRubyObject match
         0: .line 1362
            aload 1 /* holder */
            ifnull 3
         1: .line 1363
            aload 1 /* holder */
            iconst_0
            aload 2 /* match */
            aastore
         2: .line 1364
            goto 4
         3: .line 1365
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 2 /* match */
            invokevirtual org.jruby.runtime.ThreadContext.setBackRef:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         4: .line 1367
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.jruby.runtime.builtin.IRubyObject match
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] holder
        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   holder  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     2    match  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      holder   
      match    

  static org.jruby.RubyMatchData createMatchData(org.jruby.runtime.ThreadContext, org.jruby.RubyString, org.joni.Matcher, org.joni.Regex);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/joni/Matcher;Lorg/joni/Regex;)Lorg/jruby/RubyMatchData;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.RubyString str
        start local 2 // org.joni.Matcher matcher
        start local 3 // org.joni.Regex pattern
         0: .line 1370
            new org.jruby.RubyMatchData
            dup
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokespecial org.jruby.RubyMatchData.<init>:(Lorg/jruby/Ruby;)V
            astore 4 /* match */
        start local 4 // org.jruby.RubyMatchData match
         1: .line 1371
            aload 4 /* match */
            aload 0 /* context */
            aload 1 /* str */
            aload 2 /* matcher */
            aload 3 /* pattern */
            invokevirtual org.jruby.RubyMatchData.initMatchData:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/joni/Matcher;Lorg/joni/Regex;)V
         2: .line 1372
            aload 4 /* match */
            areturn
        end local 4 // org.jruby.RubyMatchData match
        end local 3 // org.joni.Regex pattern
        end local 2 // org.joni.Matcher matcher
        end local 1 // org.jruby.RubyString str
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1      str  Lorg/jruby/RubyString;
            0    3     2  matcher  Lorg/joni/Matcher;
            0    3     3  pattern  Lorg/joni/Regex;
            1    3     4    match  Lorg/jruby/RubyMatchData;
    MethodParameters:
         Name  Flags
      context  
      str      
      matcher  
      pattern  

  public org.jruby.runtime.builtin.IRubyObject options();
    descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 1377
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.getOptions:()Lorg/jruby/util/RegexpOptions;
            invokevirtual org.jruby.util.RegexpOptions.toOptions:()I
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            areturn
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyRegexp;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()

  public org.jruby.runtime.builtin.IRubyObject casefold_p(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1382
            aload 1 /* context */
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.getOptions:()Lorg/jruby/util/RegexpOptions;
            invokevirtual org.jruby.util.RegexpOptions.isIgnorecase:()Z
            invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRegexp;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"casefold?"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject source();
    descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 1390
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.check:()V
         1: .line 1391
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            ifnonnull 2
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
      StackMap locals:
      StackMap stack: org.jcodings.Encoding
         3: astore 1 /* enc */
        start local 1 // org.jcodings.Encoding enc
         4: .line 1392
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.dup:()Lorg/jruby/util/ByteList;
            astore 2 /* newStr */
        start local 2 // org.jruby.util.ByteList newStr
         5: .line 1393
            aload 2 /* newStr */
            aload 1 /* enc */
            invokevirtual org.jruby.util.ByteList.setEncoding:(Lorg/jcodings/Encoding;)V
         6: .line 1394
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            aload 2 /* newStr */
            invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            aload 0 /* this */
            invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
            areturn
        end local 2 // org.jruby.util.ByteList newStr
        end local 1 // org.jcodings.Encoding enc
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lorg/jruby/RubyRegexp;
            4    7     1     enc  Lorg/jcodings/Encoding;
            5    7     2  newStr  Lorg/jruby/util/ByteList;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()

  public final int length();
    descriptor: ()I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 1398
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            ireturn
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyRegexp;

  public org.jruby.runtime.builtin.IRubyObject inspect();
    descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 1407
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            ifnonnull 1
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.anyToString:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         1: .line 1408
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            astore 1 /* runtime */
        start local 1 // org.jruby.Ruby runtime
         2: .line 1409
            aload 1 /* runtime */
            aload 1 /* runtime */
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            invokestatic org.jruby.util.RegexpSupport.regexpDescription19:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;Lorg/jcodings/Encoding;)Lorg/jruby/util/ByteList;
            invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            areturn
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyRegexp;
            2    3     1  runtime  Lorg/jruby/Ruby;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"inspect"})

  public org.jruby.runtime.builtin.IRubyObject inspect19();
    descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 1414
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.inspect:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyRegexp;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public org.jruby.RubyString to_s();
    descriptor: ()Lorg/jruby/RubyString;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=8, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 1422
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.check:()V
         1: .line 1424
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.metaClass:Lorg/jruby/RubyClass;
            getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
            astore 1 /* runtime */
        start local 1 // org.jruby.Ruby runtime
         2: .line 1425
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            invokevirtual org.jruby.util.RegexpOptions.clone:()Lorg/jruby/util/RegexpOptions;
            astore 2 /* newOptions */
        start local 2 // org.jruby.util.RegexpOptions newOptions
         3: .line 1426
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            istore 3 /* p */
        start local 3 // int p
         4: .line 1427
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            istore 4 /* len */
        start local 4 // int len
         5: .line 1428
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            astore 5 /* bytes */
        start local 5 // byte[] bytes
         6: .line 1430
            new org.jruby.util.ByteList
            dup
            iload 4 /* len */
            invokespecial org.jruby.util.ByteList.<init>:(I)V
            astore 6 /* result */
        start local 6 // org.jruby.util.ByteList result
         7: .line 1431
            aload 6 /* result */
            bipush 40
            invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
            bipush 63
            invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
            pop
         8: .line 1434
      StackMap locals: org.jruby.RubyRegexp org.jruby.Ruby org.jruby.util.RegexpOptions int int byte[] org.jruby.util.ByteList
      StackMap stack:
            iload 4 /* len */
            iconst_4
            if_icmplt 51
            aload 5 /* bytes */
            iload 3 /* p */
            baload
            bipush 40
            if_icmpne 51
            aload 5 /* bytes */
            iload 3 /* p */
            iconst_1
            iadd
            baload
            bipush 63
            if_icmpne 51
         9: .line 1435
            iconst_1
            istore 7 /* err */
        start local 7 // boolean err
        10: .line 1436
            iinc 3 /* p */ 2
        11: .line 1437
            iinc 4 /* len */ -2
            iload 4 /* len */
            ifle 23
        12: .line 1439
      StackMap locals: int
      StackMap stack:
            aload 5 /* bytes */
            iload 3 /* p */
            baload
            bipush 109
            if_icmpne 15
        13: .line 1440
            aload 2 /* newOptions */
            iconst_1
            invokevirtual org.jruby.util.RegexpOptions.setMultiline:(Z)V
        14: .line 1441
            goto 20
      StackMap locals:
      StackMap stack:
        15: aload 5 /* bytes */
            iload 3 /* p */
            baload
            bipush 105
            if_icmpne 18
        16: .line 1442
            aload 2 /* newOptions */
            iconst_1
            invokevirtual org.jruby.util.RegexpOptions.setIgnorecase:(Z)V
        17: .line 1443
            goto 20
      StackMap locals:
      StackMap stack:
        18: aload 5 /* bytes */
            iload 3 /* p */
            baload
            bipush 120
            if_icmpne 23
        19: .line 1444
            aload 2 /* newOptions */
            iconst_1
            invokevirtual org.jruby.util.RegexpOptions.setExtended:(Z)V
        20: .line 1448
      StackMap locals:
      StackMap stack:
            iinc 3 /* p */ 1
        21: .line 1449
            iinc 4 /* len */ -1
            iload 4 /* len */
        22: .line 1438
            ifgt 12
        23: .line 1451
      StackMap locals:
      StackMap stack:
            iload 4 /* len */
            iconst_1
            if_icmple 37
            aload 5 /* bytes */
            iload 3 /* p */
            baload
            bipush 45
            if_icmpne 37
        24: .line 1452
            iinc 3 /* p */ 1
        25: .line 1453
            iinc 4 /* len */ -1
        26: .line 1455
      StackMap locals:
      StackMap stack:
            aload 5 /* bytes */
            iload 3 /* p */
            baload
            bipush 109
            if_icmpne 29
        27: .line 1456
            aload 2 /* newOptions */
            iconst_0
            invokevirtual org.jruby.util.RegexpOptions.setMultiline:(Z)V
        28: .line 1457
            goto 34
      StackMap locals:
      StackMap stack:
        29: aload 5 /* bytes */
            iload 3 /* p */
            baload
            bipush 105
            if_icmpne 32
        30: .line 1458
            aload 2 /* newOptions */
            iconst_0
            invokevirtual org.jruby.util.RegexpOptions.setIgnorecase:(Z)V
        31: .line 1459
            goto 34
      StackMap locals:
      StackMap stack:
        32: aload 5 /* bytes */
            iload 3 /* p */
            baload
            bipush 120
            if_icmpne 37
        33: .line 1460
            aload 2 /* newOptions */
            iconst_0
            invokevirtual org.jruby.util.RegexpOptions.setExtended:(Z)V
        34: .line 1464
      StackMap locals:
      StackMap stack:
            iinc 3 /* p */ 1
        35: .line 1465
            iinc 4 /* len */ -1
            iload 4 /* len */
        36: .line 1454
            ifgt 26
        37: .line 1468
      StackMap locals:
      StackMap stack:
            aload 5 /* bytes */
            iload 3 /* p */
            baload
            bipush 41
            if_icmpne 41
        38: .line 1469
            iinc 4 /* len */ -1
        39: .line 1470
            iinc 3 /* p */ 1
        40: .line 1471
            goto 8
        41: .line 1474
      StackMap locals:
      StackMap stack:
            aload 5 /* bytes */
            iload 3 /* p */
            baload
            bipush 58
            if_icmpne 47
            aload 5 /* bytes */
            iload 3 /* p */
            iload 4 /* len */
            iadd
            iconst_1
            isub
            baload
            bipush 41
            if_icmpne 47
        42: .line 1476
            new org.joni.Regex
            aload 5 /* bytes */
            iinc 3 /* p */ 1
            iload 3 /* p */
            iload 3 /* p */
            iinc 4 /* len */ -2
            iload 4 /* len */
            iadd
            iconst_0
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            getstatic org.joni.Syntax.DEFAULT:Lorg/joni/Syntax;
            getstatic org.joni.WarnCallback.NONE:Lorg/joni/WarnCallback;
            invokespecial org.joni.Regex.<init>:([BIIILorg/jcodings/Encoding;Lorg/joni/Syntax;Lorg/joni/WarnCallback;)V
        43: .line 1477
            iconst_0
            istore 7 /* err */
        44: .line 1478
            goto 47
      StackMap locals:
      StackMap stack: org.joni.exception.JOniException
        45: pop
        46: .line 1479
            iconst_1
            istore 7 /* err */
        47: .line 1483
      StackMap locals:
      StackMap stack:
            iload 7 /* err */
            ifeq 51
        48: .line 1484
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            astore 2 /* newOptions */
        49: .line 1485
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            istore 3 /* p */
        50: .line 1486
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            istore 4 /* len */
        end local 7 // boolean err
        51: .line 1490
      StackMap locals:
      StackMap stack:
            aload 6 /* result */
            aload 2 /* newOptions */
            invokestatic org.jruby.util.RegexpSupport.appendOptions:(Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)V
        52: .line 1492
            aload 2 /* newOptions */
            invokevirtual org.jruby.util.RegexpOptions.isEmbeddable:()Z
            ifne 57
        53: .line 1493
            aload 6 /* result */
            bipush 45
            invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
            pop
        54: .line 1494
            aload 2 /* newOptions */
            invokevirtual org.jruby.util.RegexpOptions.isMultiline:()Z
            ifne 55
            aload 6 /* result */
            bipush 109
            invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
            pop
        55: .line 1495
      StackMap locals:
      StackMap stack:
            aload 2 /* newOptions */
            invokevirtual org.jruby.util.RegexpOptions.isIgnorecase:()Z
            ifne 56
            aload 6 /* result */
            bipush 105
            invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
            pop
        56: .line 1496
      StackMap locals:
      StackMap stack:
            aload 2 /* newOptions */
            invokevirtual org.jruby.util.RegexpOptions.isExtended:()Z
            ifne 57
            aload 6 /* result */
            bipush 120
            invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
            pop
        57: .line 1498
      StackMap locals:
      StackMap stack:
            aload 6 /* result */
            bipush 58
            invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
            pop
        58: .line 1499
            aload 1 /* runtime */
            aload 6 /* result */
            aload 5 /* bytes */
            iload 3 /* p */
            iload 4 /* len */
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            aconst_null
            invokestatic org.jruby.util.RegexpSupport.appendRegexpString19:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;[BIILorg/jcodings/Encoding;Lorg/jcodings/Encoding;)V
        59: .line 1501
            aload 6 /* result */
            bipush 41
            invokevirtual org.jruby.util.ByteList.append:(B)Lorg/jruby/util/ByteList;
            pop
        60: .line 1502
            aload 1 /* runtime */
            aload 6 /* result */
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.getEncoding:()Lorg/jcodings/Encoding;
            invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            aload 0 /* this */
            invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
            checkcast org.jruby.RubyString
            areturn
        end local 6 // org.jruby.util.ByteList result
        end local 5 // byte[] bytes
        end local 4 // int len
        end local 3 // int p
        end local 2 // org.jruby.util.RegexpOptions newOptions
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   61     0        this  Lorg/jruby/RubyRegexp;
            2   61     1     runtime  Lorg/jruby/Ruby;
            3   61     2  newOptions  Lorg/jruby/util/RegexpOptions;
            4   61     3           p  I
            5   61     4         len  I
            6   61     5       bytes  [B
            7   61     6      result  Lorg/jruby/util/ByteList;
           10   51     7         err  Z
      Exception table:
        from    to  target  type
          42    44      45  Class org.joni.exception.JOniException
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()

  public java.lang.String[] getNames();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=1
        start local 0 // org.jruby.RubyRegexp this
         0: .line 1511
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            invokevirtual org.joni.Regex.numberOfNames:()I
            istore 1 /* nameLength */
        start local 1 // int nameLength
         1: .line 1512
            iload 1 /* nameLength */
            ifne 2
            getstatic org.jruby.util.StringSupport.EMPTY_STRING_ARRAY:[Ljava/lang/String;
            areturn
         2: .line 1514
      StackMap locals: int
      StackMap stack:
            iload 1 /* nameLength */
            anewarray java.lang.String
            astore 2 /* names */
        start local 2 // java.lang.String[] names
         3: .line 1515
            iconst_0
            istore 3 /* j */
        start local 3 // int j
         4: .line 1516
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            invokevirtual org.joni.Regex.namedBackrefIterator:()Ljava/util/Iterator;
            astore 4 /* i */
        start local 4 // java.util.Iterator i
         5: goto 8
         6: .line 1517
      StackMap locals: java.lang.String[] int java.util.Iterator
      StackMap stack:
            aload 4 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.joni.NameEntry
            astore 5 /* e */
        start local 5 // org.joni.NameEntry e
         7: .line 1518
            aload 2 /* names */
            iload 3 /* j */
            iinc 3 /* j */ 1
            new java.lang.String
            dup
            aload 5 /* e */
            getfield org.joni.NameEntry.name:[B
            aload 5 /* e */
            getfield org.joni.NameEntry.nameP:I
            aload 5 /* e */
            getfield org.joni.NameEntry.nameEnd:I
            aload 5 /* e */
            getfield org.joni.NameEntry.nameP:I
            isub
            invokespecial java.lang.String.<init>:([BII)V
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            aastore
        end local 5 // org.joni.NameEntry e
         8: .line 1516
      StackMap locals:
      StackMap stack:
            aload 4 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        end local 4 // java.util.Iterator i
         9: .line 1521
            aload 2 /* names */
            areturn
        end local 3 // int j
        end local 2 // java.lang.String[] names
        end local 1 // int nameLength
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/jruby/RubyRegexp;
            1   10     1  nameLength  I
            3   10     2       names  [Ljava/lang/String;
            4   10     3           j  I
            5    9     4           i  Ljava/util/Iterator<Lorg/joni/NameEntry;>;
            7    8     5           e  Lorg/joni/NameEntry;

  public org.jruby.runtime.builtin.IRubyObject names(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1529
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.check:()V
         1: .line 1530
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         2: .line 1531
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            invokevirtual org.joni.Regex.numberOfNames:()I
            ifne 3
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.newEmptyArray:()Lorg/jruby/RubyArray;
            areturn
         3: .line 1533
      StackMap locals: org.jruby.Ruby
      StackMap stack:
            aload 2 /* runtime */
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            invokevirtual org.joni.Regex.numberOfNames:()I
            invokestatic org.jruby.RubyArray.newBlankArray:(Lorg/jruby/Ruby;I)Lorg/jruby/RubyArray;
            astore 3 /* ary */
        start local 3 // org.jruby.RubyArray ary
         4: .line 1534
            iconst_0
            istore 4 /* index */
        start local 4 // int index
         5: .line 1535
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            invokevirtual org.joni.Regex.namedBackrefIterator:()Ljava/util/Iterator;
            astore 5 /* i */
        start local 5 // java.util.Iterator i
         6: goto 10
         7: .line 1536
      StackMap locals: org.jruby.RubyArray int java.util.Iterator
      StackMap stack:
            aload 5 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.joni.NameEntry
            astore 6 /* e */
        start local 6 // org.joni.NameEntry e
         8: .line 1537
            aload 2 /* runtime */
            aload 6 /* e */
            getfield org.joni.NameEntry.name:[B
            aload 6 /* e */
            getfield org.joni.NameEntry.nameP:I
            aload 6 /* e */
            getfield org.joni.NameEntry.nameEnd:I
            aload 6 /* e */
            getfield org.joni.NameEntry.nameP:I
            isub
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
            invokestatic org.jruby.RubyString.newStringShared:(Lorg/jruby/Ruby;[BIILorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            astore 7 /* name */
        start local 7 // org.jruby.RubyString name
         9: .line 1538
            aload 3 /* ary */
            iload 4 /* index */
            iinc 4 /* index */ 1
            aload 7 /* name */
            invokevirtual org.jruby.RubyArray.storeInternal:(ILorg/jruby/runtime/builtin/IRubyObject;)V
        end local 7 // org.jruby.RubyString name
        end local 6 // org.joni.NameEntry e
        10: .line 1535
      StackMap locals:
      StackMap stack:
            aload 5 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        end local 5 // java.util.Iterator i
        11: .line 1540
            aload 3 /* ary */
            areturn
        end local 4 // int index
        end local 3 // org.jruby.RubyArray ary
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lorg/jruby/RubyRegexp;
            0   12     1  context  Lorg/jruby/runtime/ThreadContext;
            2   12     2  runtime  Lorg/jruby/Ruby;
            4   12     3      ary  Lorg/jruby/RubyArray;
            5   12     4    index  I
            6   11     5        i  Ljava/util/Iterator<Lorg/joni/NameEntry;>;
            8   10     6        e  Lorg/joni/NameEntry;
            9   10     7     name  Lorg/jruby/RubyString;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject named_captures(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1548
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.check:()V
         1: .line 1549
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         2: .line 1550
            aload 2 /* runtime */
            invokestatic org.jruby.RubyHash.newHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
            astore 3 /* hash */
        start local 3 // org.jruby.RubyHash hash
         3: .line 1551
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            invokevirtual org.joni.Regex.numberOfNames:()I
            ifne 4
            aload 3 /* hash */
            areturn
         4: .line 1553
      StackMap locals: org.jruby.Ruby org.jruby.RubyHash
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            invokevirtual org.joni.Regex.namedBackrefIterator:()Ljava/util/Iterator;
            astore 4 /* i */
        start local 4 // java.util.Iterator i
         5: goto 16
         6: .line 1554
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 4 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.joni.NameEntry
            astore 5 /* e */
        start local 5 // org.joni.NameEntry e
         7: .line 1555
            aload 5 /* e */
            invokevirtual org.joni.NameEntry.getBackRefs:()[I
            astore 6 /* backrefs */
        start local 6 // int[] backrefs
         8: .line 1556
            aload 2 /* runtime */
            aload 6 /* backrefs */
            arraylength
            invokestatic org.jruby.RubyArray.newBlankArrayInternal:(Lorg/jruby/Ruby;I)Lorg/jruby/RubyArray;
            astore 7 /* ary */
        start local 7 // org.jruby.RubyArray ary
         9: .line 1558
            iconst_0
            istore 8 /* idx */
        start local 8 // int idx
        10: goto 13
        11: .line 1559
      StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.Ruby org.jruby.RubyHash java.util.Iterator org.joni.NameEntry int[] org.jruby.RubyArray int
      StackMap stack:
            aload 7 /* ary */
            iload 8 /* idx */
            aload 2 /* runtime */
            aload 6 /* backrefs */
            iload 8 /* idx */
            iaload
            i2l
            invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
            invokevirtual org.jruby.RubyArray.storeInternal:(ILorg/jruby/runtime/builtin/IRubyObject;)V
        12: .line 1558
            iinc 8 /* idx */ 1
      StackMap locals:
      StackMap stack:
        13: iload 8 /* idx */
            aload 6 /* backrefs */
            arraylength
            if_icmplt 11
        end local 8 // int idx
        14: .line 1561
            aload 2 /* runtime */
            aload 5 /* e */
            getfield org.joni.NameEntry.name:[B
            aload 5 /* e */
            getfield org.joni.NameEntry.nameP:I
            aload 5 /* e */
            getfield org.joni.NameEntry.nameEnd:I
            aload 5 /* e */
            getfield org.joni.NameEntry.nameP:I
            isub
            invokestatic org.jruby.RubyString.newStringShared:(Lorg/jruby/Ruby;[BII)Lorg/jruby/RubyString;
            astore 8 /* name */
        start local 8 // org.jruby.RubyString name
        15: .line 1562
            aload 3 /* hash */
            aload 8 /* name */
            aload 1 /* context */
            invokevirtual org.jruby.RubyString.freeze:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            aload 7 /* ary */
            invokevirtual org.jruby.RubyHash.fastASet:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
        end local 8 // org.jruby.RubyString name
        end local 7 // org.jruby.RubyArray ary
        end local 6 // int[] backrefs
        end local 5 // org.joni.NameEntry e
        16: .line 1553
      StackMap locals: org.jruby.RubyRegexp org.jruby.runtime.ThreadContext org.jruby.Ruby org.jruby.RubyHash java.util.Iterator
      StackMap stack:
            aload 4 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        end local 4 // java.util.Iterator i
        17: .line 1564
            aload 3 /* hash */
            areturn
        end local 3 // org.jruby.RubyHash hash
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   18     0      this  Lorg/jruby/RubyRegexp;
            0   18     1   context  Lorg/jruby/runtime/ThreadContext;
            2   18     2   runtime  Lorg/jruby/Ruby;
            3   18     3      hash  Lorg/jruby/RubyHash;
            5   17     4         i  Ljava/util/Iterator<Lorg/joni/NameEntry;>;
            7   16     5         e  Lorg/joni/NameEntry;
            8   16     6  backrefs  [I
            9   16     7       ary  Lorg/jruby/RubyArray;
           10   14     8       idx  I
           15   16     8      name  Lorg/jruby/RubyString;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject encoding(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1569
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            ifnonnull 1
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
      StackMap locals:
      StackMap stack: org.jcodings.Encoding
         2: astore 2 /* enc */
        start local 2 // org.jcodings.Encoding enc
         3: .line 1570
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            aload 2 /* enc */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getEncoding:(Lorg/jcodings/Encoding;)Lorg/jruby/RubyEncoding;
            areturn
        end local 2 // org.jcodings.Encoding enc
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyRegexp;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            3    4     2      enc  Lorg/jcodings/Encoding;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject fixed_encoding_p(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1575
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.options:Lorg/jruby/util/RegexpOptions;
            invokevirtual org.jruby.util.RegexpOptions.isFixed:()Z
            invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyRegexp;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"fixed_encoding?"})
    MethodParameters:
         Name  Flags
      context  

  public static org.jruby.runtime.builtin.IRubyObject nth_match(int, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (ILorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // int nth
        start local 1 // org.jruby.runtime.builtin.IRubyObject match
         0: .line 1582
            aload 1 /* match */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 1
            aload 1 /* match */
            areturn
         1: .line 1583
      StackMap locals:
      StackMap stack:
            aload 1 /* match */
            checkcast org.jruby.RubyMatchData
            astore 2 /* m */
        start local 2 // org.jruby.RubyMatchData m
         2: .line 1584
            aload 2 /* m */
            invokevirtual org.jruby.RubyMatchData.check:()V
         3: .line 1586
            aload 2 /* m */
            invokevirtual org.jruby.RubyMatchData.getRuntime:()Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         4: .line 1589
            aload 2 /* m */
            getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
            ifnonnull 10
         5: .line 1590
            iload 0 /* nth */
            iconst_1
            if_icmpge 6
            iload 0 /* nth */
            ifge 7
            iinc 0 /* nth */ 1
            iload 0 /* nth */
            ifgt 7
      StackMap locals: org.jruby.RubyMatchData org.jruby.Ruby
      StackMap stack:
         6: aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         7: .line 1591
      StackMap locals:
      StackMap stack:
            aload 2 /* m */
            getfield org.jruby.RubyMatchData.begin:I
            istore 4 /* start */
        start local 4 // int start
         8: .line 1592
            aload 2 /* m */
            getfield org.jruby.RubyMatchData.end:I
            istore 5 /* end */
        start local 5 // int end
         9: .line 1593
            goto 14
        end local 5 // int end
        end local 4 // int start
        10: .line 1594
      StackMap locals:
      StackMap stack:
            iload 0 /* nth */
            aload 2 /* m */
            getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
            getfield org.joni.Region.numRegs:I
            if_icmpge 11
            iload 0 /* nth */
            ifge 12
            iload 0 /* nth */
            aload 2 /* m */
            getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
            getfield org.joni.Region.numRegs:I
            iadd
            dup
            istore 0 /* nth */
            ifgt 12
      StackMap locals:
      StackMap stack:
        11: aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        12: .line 1595
      StackMap locals:
      StackMap stack:
            aload 2 /* m */
            getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
            getfield org.joni.Region.beg:[I
            iload 0 /* nth */
            iaload
            istore 4 /* start */
        start local 4 // int start
        13: .line 1596
            aload 2 /* m */
            getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
            getfield org.joni.Region.end:[I
            iload 0 /* nth */
            iaload
            istore 5 /* end */
        start local 5 // int end
        14: .line 1599
      StackMap locals: int int
      StackMap stack:
            iload 4 /* start */
            iconst_m1
            if_icmpne 15
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        15: .line 1601
      StackMap locals:
      StackMap stack:
            aload 2 /* m */
            getfield org.jruby.RubyMatchData.str:Lorg/jruby/RubyString;
            aload 3 /* runtime */
            iload 4 /* start */
            iload 5 /* end */
            iload 4 /* start */
            isub
            invokevirtual org.jruby.RubyString.makeShared:(Lorg/jruby/Ruby;II)Lorg/jruby/RubyString;
            astore 6 /* str */
        start local 6 // org.jruby.RubyString str
        16: .line 1602
            aload 6 /* str */
            aload 2 /* m */
            invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
            pop
        17: .line 1603
            aload 6 /* str */
            areturn
        end local 6 // org.jruby.RubyString str
        end local 5 // int end
        end local 4 // int start
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.RubyMatchData m
        end local 1 // org.jruby.runtime.builtin.IRubyObject match
        end local 0 // int nth
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   18     0      nth  I
            0   18     1    match  Lorg/jruby/runtime/builtin/IRubyObject;
            2   18     2        m  Lorg/jruby/RubyMatchData;
            4   18     3  runtime  Lorg/jruby/Ruby;
            8   10     4    start  I
           13   18     4    start  I
            9   10     5      end  I
           14   18     5      end  I
           16   18     6      str  Lorg/jruby/RubyString;
    MethodParameters:
       Name  Flags
      nth    
      match  

  public static org.jruby.runtime.builtin.IRubyObject last_match(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject match
         0: .line 1610
            iconst_0
            aload 0 /* match */
            invokestatic org.jruby.RubyRegexp.nth_match:(ILorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject match
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  match  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
       Name  Flags
      match  

  public static org.jruby.runtime.builtin.IRubyObject match_pre(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject match
         0: .line 1617
            aload 0 /* match */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 1
            aload 0 /* match */
            areturn
         1: .line 1618
      StackMap locals:
      StackMap stack:
            aload 0 /* match */
            checkcast org.jruby.RubyMatchData
            astore 1 /* m */
        start local 1 // org.jruby.RubyMatchData m
         2: .line 1619
            aload 1 /* m */
            invokevirtual org.jruby.RubyMatchData.check:()V
         3: .line 1621
            aload 1 /* m */
            invokevirtual org.jruby.RubyMatchData.getRuntime:()Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         4: .line 1622
            aload 1 /* m */
            getfield org.jruby.RubyMatchData.begin:I
            iconst_m1
            if_icmpne 5
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         5: .line 1623
      StackMap locals: org.jruby.RubyMatchData org.jruby.Ruby
      StackMap stack:
            aload 1 /* m */
            getfield org.jruby.RubyMatchData.str:Lorg/jruby/RubyString;
            aload 2 /* runtime */
            iconst_0
            aload 1 /* m */
            getfield org.jruby.RubyMatchData.begin:I
            invokevirtual org.jruby.RubyString.makeShared:(Lorg/jruby/Ruby;II)Lorg/jruby/RubyString;
            aload 1 /* m */
            invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
            areturn
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.RubyMatchData m
        end local 0 // org.jruby.runtime.builtin.IRubyObject match
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0    match  Lorg/jruby/runtime/builtin/IRubyObject;
            2    6     1        m  Lorg/jruby/RubyMatchData;
            4    6     2  runtime  Lorg/jruby/Ruby;
    MethodParameters:
       Name  Flags
      match  

  public static org.jruby.runtime.builtin.IRubyObject match_post(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject match
         0: .line 1630
            aload 0 /* match */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 1
            aload 0 /* match */
            areturn
         1: .line 1631
      StackMap locals:
      StackMap stack:
            aload 0 /* match */
            checkcast org.jruby.RubyMatchData
            astore 1 /* m */
        start local 1 // org.jruby.RubyMatchData m
         2: .line 1632
            aload 1 /* m */
            invokevirtual org.jruby.RubyMatchData.check:()V
         3: .line 1634
            aload 1 /* m */
            invokevirtual org.jruby.RubyMatchData.getRuntime:()Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         4: .line 1635
            aload 1 /* m */
            getfield org.jruby.RubyMatchData.begin:I
            iconst_m1
            if_icmpne 5
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         5: .line 1636
      StackMap locals: org.jruby.RubyMatchData org.jruby.Ruby
      StackMap stack:
            aload 1 /* m */
            getfield org.jruby.RubyMatchData.str:Lorg/jruby/RubyString;
            aload 2 /* runtime */
            aload 1 /* m */
            getfield org.jruby.RubyMatchData.end:I
            aload 1 /* m */
            getfield org.jruby.RubyMatchData.str:Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            aload 1 /* m */
            getfield org.jruby.RubyMatchData.end:I
            isub
            invokevirtual org.jruby.RubyString.makeShared:(Lorg/jruby/Ruby;II)Lorg/jruby/RubyString;
            aload 1 /* m */
            invokevirtual org.jruby.RubyString.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
            areturn
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.RubyMatchData m
        end local 0 // org.jruby.runtime.builtin.IRubyObject match
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0    match  Lorg/jruby/runtime/builtin/IRubyObject;
            2    6     1        m  Lorg/jruby/RubyMatchData;
            4    6     2  runtime  Lorg/jruby/Ruby;
    MethodParameters:
       Name  Flags
      match  

  public static org.jruby.runtime.builtin.IRubyObject match_last(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject match
         0: .line 1643
            aload 0 /* match */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 1
            aload 0 /* match */
            areturn
         1: .line 1644
      StackMap locals:
      StackMap stack:
            aload 0 /* match */
            checkcast org.jruby.RubyMatchData
            astore 1 /* m */
        start local 1 // org.jruby.RubyMatchData m
         2: .line 1645
            aload 1 /* m */
            invokevirtual org.jruby.RubyMatchData.check:()V
         3: .line 1647
            aload 1 /* m */
            getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
            ifnull 4
            aload 1 /* m */
            getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
            getfield org.joni.Region.beg:[I
            iconst_0
            iaload
            iconst_m1
            if_icmpne 5
      StackMap locals: org.jruby.RubyMatchData
      StackMap stack:
         4: aload 0 /* match */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         5: .line 1650
      StackMap locals:
      StackMap stack:
            aload 1 /* m */
            getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
            getfield org.joni.Region.numRegs:I
            iconst_1
            isub
            istore 2 /* i */
        start local 2 // int i
         6: goto 8
      StackMap locals: int
      StackMap stack:
         7: iinc 2 /* i */ -1
      StackMap locals:
      StackMap stack:
         8: aload 1 /* m */
            getfield org.jruby.RubyMatchData.regs:Lorg/joni/Region;
            getfield org.joni.Region.beg:[I
            iload 2 /* i */
            iaload
            iconst_m1
            if_icmpne 9
            iload 2 /* i */
            ifgt 7
         9: .line 1651
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            ifne 10
            aload 0 /* match */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        10: .line 1653
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            aload 0 /* match */
            invokestatic org.jruby.RubyRegexp.nth_match:(ILorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // int i
        end local 1 // org.jruby.RubyMatchData m
        end local 0 // org.jruby.runtime.builtin.IRubyObject match
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0  match  Lorg/jruby/runtime/builtin/IRubyObject;
            2   11     1      m  Lorg/jruby/RubyMatchData;
            6   11     2      i  I
    MethodParameters:
       Name  Flags
      match  

  private static final int ASCGET(boolean, byte[], int, int, int[], org.jcodings.Encoding);
    descriptor: (Z[BII[ILorg/jcodings/Encoding;)I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Code:
      stack=5, locals=6, args_size=6
        start local 0 // boolean acompat
        start local 1 // byte[] sBytes
        start local 2 // int s
        start local 3 // int e
        start local 4 // int[] cl
        start local 5 // org.jcodings.Encoding strEnc
         0: .line 1658
            iload 0 /* acompat */
            ifeq 5
         1: .line 1659
            aload 4 /* cl */
            iconst_0
            iconst_1
            iastore
         2: .line 1660
            aload 1 /* sBytes */
            iload 2 /* s */
            baload
            invokestatic org.jcodings.Encoding.isAscii:(B)Z
            ifeq 3
            aload 1 /* sBytes */
            iload 2 /* s */
            baload
            sipush 255
            iand
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_m1
      StackMap locals:
      StackMap stack: int
         4: ireturn
         5: .line 1662
      StackMap locals:
      StackMap stack:
            aload 1 /* sBytes */
            iload 2 /* s */
            iload 3 /* e */
            aload 4 /* cl */
            aload 5 /* strEnc */
            invokestatic org.jruby.util.io.EncodingUtils.encAscget:([BII[ILorg/jcodings/Encoding;)I
            ireturn
        end local 5 // org.jcodings.Encoding strEnc
        end local 4 // int[] cl
        end local 3 // int e
        end local 2 // int s
        end local 1 // byte[] sBytes
        end local 0 // boolean acompat
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0  acompat  Z
            0    6     1   sBytes  [B
            0    6     2        s  I
            0    6     3        e  I
            0    6     4       cl  [I
            0    6     5   strEnc  Lorg/jcodings/Encoding;
    MethodParameters:
         Name  Flags
      acompat  
      sBytes   
      s        
      e        
      cl       
      strEnc   

  static org.jruby.RubyString regsub(org.jruby.runtime.ThreadContext, org.jruby.RubyString, org.jruby.RubyString, org.joni.Regex, org.joni.Matcher);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/jruby/RubyString;Lorg/joni/Regex;Lorg/joni/Matcher;)Lorg/jruby/RubyString;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.RubyString str
        start local 2 // org.jruby.RubyString src
        start local 3 // org.joni.Regex pattern
        start local 4 // org.joni.Matcher matcher
         0: .line 1667
            aload 0 /* context */
            aload 1 /* str */
            aload 2 /* src */
            aload 3 /* pattern */
            aload 4 /* matcher */
            invokevirtual org.joni.Matcher.getRegion:()Lorg/joni/Region;
            aload 4 /* matcher */
            invokevirtual org.joni.Matcher.getBegin:()I
            aload 4 /* matcher */
            invokevirtual org.joni.Matcher.getEnd:()I
            invokestatic org.jruby.RubyRegexp.regsub:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/jruby/RubyString;Lorg/joni/Regex;Lorg/joni/Region;II)Lorg/jruby/RubyString;
            areturn
        end local 4 // org.joni.Matcher matcher
        end local 3 // org.joni.Regex pattern
        end local 2 // org.jruby.RubyString src
        end local 1 // org.jruby.RubyString str
        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      str  Lorg/jruby/RubyString;
            0    1     2      src  Lorg/jruby/RubyString;
            0    1     3  pattern  Lorg/joni/Regex;
            0    1     4  matcher  Lorg/joni/Matcher;
    MethodParameters:
         Name  Flags
      context  
      str      
      src      
      pattern  
      matcher  

  static org.jruby.RubyString regsub(org.jruby.runtime.ThreadContext, org.jruby.RubyString, org.jruby.RubyString, org.joni.Regex, org.joni.Region, int, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyString;Lorg/jruby/RubyString;Lorg/joni/Regex;Lorg/joni/Region;II)Lorg/jruby/RubyString;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=25, args_size=7
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.RubyString str
        start local 2 // org.jruby.RubyString src
        start local 3 // org.joni.Regex pattern
        start local 4 // org.joni.Region regs
        start local 5 // int begin
        start local 6 // int end
         0: .line 1673
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 7 /* runtime */
        start local 7 // org.jruby.Ruby runtime
         1: .line 1675
            aconst_null
            astore 8 /* val */
        start local 8 // org.jruby.RubyString val
         2: .line 1677
            iconst_0
            istore 12 /* no */
        start local 12 // int no
         3: iconst_1
            newarray 10
            astore 13 /* clen */
        start local 13 // int[] clen
         4: .line 1678
            aload 0 /* context */
            aload 1 /* str */
            invokestatic org.jruby.util.io.EncodingUtils.encGet:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jcodings/Encoding;
            astore 14 /* strEnc */
        start local 14 // org.jcodings.Encoding strEnc
         5: .line 1679
            aload 0 /* context */
            aload 2 /* src */
            invokestatic org.jruby.util.io.EncodingUtils.encGet:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jcodings/Encoding;
            astore 15 /* srcEnc */
        start local 15 // org.jcodings.Encoding srcEnc
         6: .line 1680
            aload 14 /* strEnc */
            invokestatic org.jruby.util.io.EncodingUtils.encAsciicompat:(Lorg/jcodings/Encoding;)Z
            istore 16 /* acompat */
        start local 16 // boolean acompat
         7: .line 1682
            aload 1 /* str */
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 17 /* bs */
        start local 17 // org.jruby.util.ByteList bs
         8: .line 1683
            aload 2 /* src */
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 18 /* srcbs */
        start local 18 // org.jruby.util.ByteList srcbs
         9: .line 1684
            aload 17 /* bs */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            astore 19 /* sBytes */
        start local 19 // byte[] sBytes
        10: .line 1686
            aload 17 /* bs */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            dup
            istore 10 /* s */
        start local 10 // int s
        11: istore 9 /* p */
        start local 9 // int p
        12: .line 1687
            iload 9 /* p */
            aload 17 /* bs */
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            iadd
            istore 11 /* e */
        start local 11 // int e
        13: .line 1689
            goto 80
        14: .line 1690
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.RubyString org.jruby.RubyString org.joni.Regex org.joni.Region int int org.jruby.Ruby org.jruby.RubyString int int int int int[] org.jcodings.Encoding org.jcodings.Encoding int org.jruby.util.ByteList org.jruby.util.ByteList byte[]
      StackMap stack:
            iload 16 /* acompat */
            aload 19 /* sBytes */
            iload 10 /* s */
            iload 11 /* e */
            aload 13 /* clen */
            aload 14 /* strEnc */
            invokestatic org.jruby.RubyRegexp.ASCGET:(Z[BII[ILorg/jcodings/Encoding;)I
            istore 20 /* c */
        start local 20 // int c
        15: .line 1692
            iload 20 /* c */
            iconst_m1
            if_icmpne 18
        16: .line 1693
            iload 10 /* s */
            aload 14 /* strEnc */
            aload 19 /* sBytes */
            iload 10 /* s */
            iload 11 /* e */
            invokestatic org.jruby.util.StringSupport.length:(Lorg/jcodings/Encoding;[BII)I
            iadd
            istore 10 /* s */
        17: .line 1694
            goto 80
        18: .line 1696
      StackMap locals: int
      StackMap stack:
            iload 10 /* s */
            istore 21 /* ss */
        start local 21 // int ss
        19: .line 1697
            iload 10 /* s */
            aload 13 /* clen */
            iconst_0
            iaload
            iadd
            istore 10 /* s */
        20: .line 1699
            iload 20 /* c */
            bipush 92
            if_icmpne 80
            iload 10 /* s */
            iload 11 /* e */
            if_icmpne 21
            goto 80
        21: .line 1701
      StackMap locals: int
      StackMap stack:
            aload 8 /* val */
            ifnonnull 23
        22: .line 1702
            aload 7 /* runtime */
            new org.jruby.util.ByteList
            dup
            iload 21 /* ss */
            iload 9 /* p */
            isub
            invokespecial org.jruby.util.ByteList.<init>:(I)V
            invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            astore 8 /* val */
        23: .line 1704
      StackMap locals:
      StackMap stack:
            aload 7 /* runtime */
            aload 8 /* val */
            aload 19 /* sBytes */
            iload 9 /* p */
            iload 21 /* ss */
            iload 9 /* p */
            isub
            aload 14 /* strEnc */
            invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
        24: .line 1706
            iload 16 /* acompat */
            aload 19 /* sBytes */
            iload 10 /* s */
            iload 11 /* e */
            aload 13 /* clen */
            aload 14 /* strEnc */
            invokestatic org.jruby.RubyRegexp.ASCGET:(Z[BII[ILorg/jcodings/Encoding;)I
            istore 20 /* c */
        25: .line 1708
            iload 20 /* c */
            iconst_m1
            if_icmpne 30
        26: .line 1709
            iload 10 /* s */
            aload 14 /* strEnc */
            aload 19 /* sBytes */
            iload 10 /* s */
            iload 11 /* e */
            invokestatic org.jruby.util.StringSupport.length:(Lorg/jcodings/Encoding;[BII)I
            iadd
            istore 10 /* s */
        27: .line 1710
            aload 7 /* runtime */
            aload 8 /* val */
            aload 19 /* sBytes */
            iload 21 /* ss */
            iload 10 /* s */
            iload 21 /* ss */
            isub
            aload 14 /* strEnc */
            invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
        28: .line 1711
            iload 10 /* s */
            istore 9 /* p */
        29: .line 1712
            goto 80
        30: .line 1714
      StackMap locals:
      StackMap stack:
            iload 10 /* s */
            aload 13 /* clen */
            iconst_0
            iaload
            iadd
            istore 10 /* s */
        31: .line 1716
            iload 10 /* s */
            istore 9 /* p */
        32: .line 1717
            iload 20 /* c */
            lookupswitch { // 16
                   38: 56
                   39: 60
                   43: 62
                   48: 56
                   49: 33
                   50: 33
                   51: 33
                   52: 33
                   53: 33
                   54: 33
                   55: 33
                   56: 33
                   57: 33
                   92: 68
                   96: 58
                  107: 36
              default: 70
          }
        33: .line 1720
      StackMap locals:
      StackMap stack:
            aload 3 /* pattern */
            getstatic org.joni.Syntax.RUBY:Lorg/joni/Syntax;
            invokevirtual org.joni.Regex.noNameGroupIsActive:(Lorg/joni/Syntax;)Z
            ifeq 80
        34: .line 1721
            iload 20 /* c */
            bipush 48
            isub
            istore 12 /* no */
        35: .line 1722
            goto 72
        36: .line 1727
      StackMap locals:
      StackMap stack:
            iload 10 /* s */
            iload 11 /* e */
            if_icmpge 54
            iload 16 /* acompat */
            aload 19 /* sBytes */
            iload 10 /* s */
            iload 11 /* e */
            aload 13 /* clen */
            aload 14 /* strEnc */
            invokestatic org.jruby.RubyRegexp.ASCGET:(Z[BII[ILorg/jcodings/Encoding;)I
            bipush 60
            if_icmpne 54
        37: .line 1728
            iload 10 /* s */
            aload 13 /* clen */
            iconst_0
            iaload
            iadd
            istore 22 /* name */
        start local 22 // int name
        38: .line 1729
            iload 22 /* name */
            istore 23 /* nameEnd */
        start local 23 // int nameEnd
        39: .line 1730
            goto 45
        40: .line 1731
      StackMap locals: int int
      StackMap stack:
            iload 16 /* acompat */
            aload 19 /* sBytes */
            iload 23 /* nameEnd */
            iload 11 /* e */
            aload 13 /* clen */
            aload 14 /* strEnc */
            invokestatic org.jruby.RubyRegexp.ASCGET:(Z[BII[ILorg/jcodings/Encoding;)I
            istore 20 /* c */
        41: .line 1732
            iload 20 /* c */
            bipush 62
            if_icmpne 42
            goto 46
        42: .line 1733
      StackMap locals:
      StackMap stack:
            iload 23 /* nameEnd */
            iload 20 /* c */
            iconst_m1
            if_icmpne 43
            aload 14 /* strEnc */
            aload 19 /* sBytes */
            iload 23 /* nameEnd */
            iload 11 /* e */
            invokestatic org.jruby.util.StringSupport.length:(Lorg/jcodings/Encoding;[BII)I
            goto 44
      StackMap locals:
      StackMap stack: int
        43: aload 13 /* clen */
            iconst_0
            iaload
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.RubyString org.jruby.RubyString org.joni.Regex org.joni.Region int int org.jruby.Ruby org.jruby.RubyString int int int int int[] org.jcodings.Encoding org.jcodings.Encoding int org.jruby.util.ByteList org.jruby.util.ByteList byte[] int int int int
      StackMap stack: int int
        44: iadd
            istore 23 /* nameEnd */
        45: .line 1730
      StackMap locals:
      StackMap stack:
            iload 23 /* nameEnd */
            iload 11 /* e */
            if_icmplt 40
        46: .line 1735
      StackMap locals:
      StackMap stack:
            iload 23 /* nameEnd */
            iload 11 /* e */
            if_icmpge 53
        47: .line 1737
            aload 3 /* pattern */
            aload 19 /* sBytes */
            iload 22 /* name */
            iload 23 /* nameEnd */
            aload 4 /* regs */
            invokevirtual org.joni.Regex.nameToBackrefNumber:([BIILorg/joni/Region;)I
            istore 12 /* no */
        48: .line 1738
            goto 51
      StackMap locals:
      StackMap stack: org.joni.exception.JOniException
        49: astore 24 /* je */
        start local 24 // org.joni.exception.JOniException je
        50: .line 1739
            aload 7 /* runtime */
            aload 24 /* je */
            invokevirtual org.joni.exception.JOniException.getMessage:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newIndexError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 24 // org.joni.exception.JOniException je
        51: .line 1741
      StackMap locals:
      StackMap stack:
            iload 23 /* nameEnd */
            aload 13 /* clen */
            iconst_0
            iaload
            iadd
            dup
            istore 10 /* s */
            istore 9 /* p */
        52: .line 1742
            goto 72
        53: .line 1744
      StackMap locals:
      StackMap stack:
            aload 7 /* runtime */
            ldc "invalid group name reference format"
            invokevirtual org.jruby.Ruby.newRuntimeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 23 // int nameEnd
        end local 22 // int name
        54: .line 1748
      StackMap locals:
      StackMap stack:
            aload 7 /* runtime */
            aload 8 /* val */
            aload 19 /* sBytes */
            iload 21 /* ss */
            iload 10 /* s */
            iload 21 /* ss */
            isub
            aload 14 /* strEnc */
            invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
        55: .line 1749
            goto 80
        56: .line 1751
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 12 /* no */
        57: .line 1752
            goto 72
        58: .line 1754
      StackMap locals:
      StackMap stack:
            aload 7 /* runtime */
            aload 8 /* val */
            aload 18 /* srcbs */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 18 /* srcbs */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            iload 5 /* begin */
            aload 15 /* srcEnc */
            invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
        59: .line 1755
            goto 80
        60: .line 1757
      StackMap locals:
      StackMap stack:
            aload 7 /* runtime */
            aload 8 /* val */
            aload 18 /* srcbs */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 18 /* srcbs */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            iload 6 /* end */
            iadd
            aload 18 /* srcbs */
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            iload 6 /* end */
            isub
            aload 15 /* srcEnc */
            invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
        61: .line 1758
            goto 80
        62: .line 1760
      StackMap locals:
      StackMap stack:
            aload 4 /* regs */
            ifnull 67
        63: .line 1761
            aload 4 /* regs */
            getfield org.joni.Region.numRegs:I
            iconst_1
            isub
            istore 12 /* no */
        64: .line 1762
            goto 66
      StackMap locals:
      StackMap stack:
        65: iinc 12 /* no */ -1
      StackMap locals:
      StackMap stack:
        66: aload 4 /* regs */
            getfield org.joni.Region.beg:[I
            iload 12 /* no */
            iaload
            iconst_m1
            if_icmpne 67
            iload 12 /* no */
            ifgt 65
        67: .line 1764
      StackMap locals:
      StackMap stack:
            iload 12 /* no */
            ifne 72
            goto 80
        68: .line 1767
      StackMap locals:
      StackMap stack:
            aload 7 /* runtime */
            aload 8 /* val */
            aload 19 /* sBytes */
            iload 10 /* s */
            aload 13 /* clen */
            iconst_0
            iaload
            isub
            aload 13 /* clen */
            iconst_0
            iaload
            aload 14 /* strEnc */
            invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
        69: .line 1768
            goto 80
        70: .line 1770
      StackMap locals:
      StackMap stack:
            aload 7 /* runtime */
            aload 8 /* val */
            aload 19 /* sBytes */
            iload 21 /* ss */
            iload 10 /* s */
            iload 21 /* ss */
            isub
            aload 14 /* strEnc */
            invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
        71: .line 1771
            goto 80
        72: .line 1774
      StackMap locals:
      StackMap stack:
            aload 4 /* regs */
            ifnull 78
        73: .line 1775
            iload 12 /* no */
            iflt 80
        74: .line 1776
            iload 12 /* no */
            aload 4 /* regs */
            getfield org.joni.Region.numRegs:I
            if_icmplt 75
            goto 80
        75: .line 1777
      StackMap locals:
      StackMap stack:
            aload 4 /* regs */
            getfield org.joni.Region.beg:[I
            iload 12 /* no */
            iaload
            iconst_m1
            if_icmpne 76
            goto 80
        76: .line 1778
      StackMap locals:
      StackMap stack:
            aload 7 /* runtime */
            aload 8 /* val */
            aload 18 /* srcbs */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 18 /* srcbs */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            aload 4 /* regs */
            getfield org.joni.Region.beg:[I
            iload 12 /* no */
            iaload
            iadd
            aload 4 /* regs */
            getfield org.joni.Region.end:[I
            iload 12 /* no */
            iaload
            aload 4 /* regs */
            getfield org.joni.Region.beg:[I
            iload 12 /* no */
            iaload
            isub
            aload 15 /* srcEnc */
            invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
        77: .line 1780
            goto 80
        78: .line 1781
      StackMap locals:
      StackMap stack:
            iload 12 /* no */
            ifne 80
            iload 5 /* begin */
            iconst_m1
            if_icmpne 79
            goto 80
        79: .line 1782
      StackMap locals:
      StackMap stack:
            aload 7 /* runtime */
            aload 8 /* val */
            aload 18 /* srcbs */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 18 /* srcbs */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            iload 5 /* begin */
            iadd
            iload 6 /* end */
            iload 5 /* begin */
            isub
            aload 15 /* srcEnc */
            invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
        end local 21 // int ss
        end local 20 // int c
        80: .line 1689
      StackMap locals:
      StackMap stack:
            iload 10 /* s */
            iload 11 /* e */
            if_icmplt 14
        81: .line 1786
            aload 8 /* val */
            ifnonnull 82
            aload 1 /* str */
            areturn
        82: .line 1787
      StackMap locals:
      StackMap stack:
            iload 9 /* p */
            iload 11 /* e */
            if_icmpge 83
            aload 7 /* runtime */
            aload 8 /* val */
            aload 19 /* sBytes */
            iload 9 /* p */
            iload 11 /* e */
            iload 9 /* p */
            isub
            aload 14 /* strEnc */
            invokestatic org.jruby.util.io.EncodingUtils.encStrBufCat:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;[BIILorg/jcodings/Encoding;)V
        83: .line 1788
      StackMap locals:
      StackMap stack:
            aload 8 /* val */
            areturn
        end local 19 // byte[] sBytes
        end local 18 // org.jruby.util.ByteList srcbs
        end local 17 // org.jruby.util.ByteList bs
        end local 16 // boolean acompat
        end local 15 // org.jcodings.Encoding srcEnc
        end local 14 // org.jcodings.Encoding strEnc
        end local 13 // int[] clen
        end local 12 // int no
        end local 11 // int e
        end local 10 // int s
        end local 9 // int p
        end local 8 // org.jruby.RubyString val
        end local 7 // org.jruby.Ruby runtime
        end local 6 // int end
        end local 5 // int begin
        end local 4 // org.joni.Region regs
        end local 3 // org.joni.Regex pattern
        end local 2 // org.jruby.RubyString src
        end local 1 // org.jruby.RubyString str
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   84     0  context  Lorg/jruby/runtime/ThreadContext;
            0   84     1      str  Lorg/jruby/RubyString;
            0   84     2      src  Lorg/jruby/RubyString;
            0   84     3  pattern  Lorg/joni/Regex;
            0   84     4     regs  Lorg/joni/Region;
            0   84     5    begin  I
            0   84     6      end  I
            1   84     7  runtime  Lorg/jruby/Ruby;
            2   84     8      val  Lorg/jruby/RubyString;
           12   84     9        p  I
           11   84    10        s  I
           13   84    11        e  I
            3   84    12       no  I
            4   84    13     clen  [I
            5   84    14   strEnc  Lorg/jcodings/Encoding;
            6   84    15   srcEnc  Lorg/jcodings/Encoding;
            7   84    16  acompat  Z
            8   84    17       bs  Lorg/jruby/util/ByteList;
            9   84    18    srcbs  Lorg/jruby/util/ByteList;
           10   84    19   sBytes  [B
           15   80    20        c  I
           19   80    21       ss  I
           38   54    22     name  I
           39   54    23  nameEnd  I
           50   51    24       je  Lorg/joni/exception/JOniException;
      Exception table:
        from    to  target  type
          47    48      49  Class org.joni.exception.JOniException
    MethodParameters:
         Name  Flags
      context  
      str      
      src      
      pattern  
      regs     
      begin    final
      end      final

  final int adjustStartPos(org.jruby.RubyString, int, boolean);
    descriptor: (Lorg/jruby/RubyString;IZ)I
    flags: (0x0010) ACC_FINAL
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyRegexp this
        start local 1 // org.jruby.RubyString str
        start local 2 // int pos
        start local 3 // boolean reverse
         0: .line 1792
            aload 0 /* this */
            invokevirtual org.jruby.RubyRegexp.check:()V
         1: .line 1793
            aload 1 /* str */
            aload 0 /* this */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            invokevirtual org.joni.Regex.getEncoding:()Lorg/jcodings/Encoding;
            iload 2 /* pos */
            iload 3 /* reverse */
            invokestatic org.jruby.RubyRegexp.adjustStartPosInternal:(Lorg/jruby/RubyString;Lorg/jcodings/Encoding;IZ)I
            ireturn
        end local 3 // boolean reverse
        end local 2 // int pos
        end local 1 // org.jruby.RubyString str
        end local 0 // org.jruby.RubyRegexp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyRegexp;
            0    2     1      str  Lorg/jruby/RubyString;
            0    2     2      pos  I
            0    2     3  reverse  Z
    MethodParameters:
         Name  Flags
      str      
      pos      
      reverse  

  private static int adjustStartPosInternal(org.jruby.RubyString, org.jcodings.Encoding, int, boolean);
    descriptor: (Lorg/jruby/RubyString;Lorg/jcodings/Encoding;IZ)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=7, args_size=4
        start local 0 // org.jruby.RubyString str
        start local 1 // org.jcodings.Encoding enc
        start local 2 // int pos
        start local 3 // boolean reverse
         0: .line 1797
            aload 0 /* str */
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 4 /* value */
        start local 4 // org.jruby.util.ByteList value
         1: .line 1798
            aload 4 /* value */
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            istore 5 /* len */
        start local 5 // int len
         2: .line 1799
            iload 2 /* pos */
            ifle 9
            aload 1 /* enc */
            invokevirtual org.jcodings.Encoding.maxLength:()I
            iconst_1
            if_icmpeq 9
            iload 2 /* pos */
            iload 5 /* len */
            if_icmpge 9
         3: .line 1800
            aload 4 /* value */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            istore 6 /* start */
        start local 6 // int start
         4: .line 1801
            iload 3 /* reverse */
            ifeq 5
            iload 2 /* pos */
            ineg
            goto 6
      StackMap locals: org.jruby.util.ByteList int int
      StackMap stack:
         5: iload 5 /* len */
            iload 2 /* pos */
            isub
      StackMap locals:
      StackMap stack: int
         6: ifle 8
         7: .line 1802
            aload 1 /* enc */
            aload 4 /* value */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            iload 6 /* start */
            iload 6 /* start */
            iload 2 /* pos */
            iadd
            iload 6 /* start */
            iload 5 /* len */
            iadd
            invokevirtual org.jcodings.Encoding.rightAdjustCharHead:([BIII)I
            iload 6 /* start */
            isub
            ireturn
         8: .line 1804
      StackMap locals:
      StackMap stack:
            aload 1 /* enc */
            aload 4 /* value */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            iload 6 /* start */
            iload 6 /* start */
            iload 2 /* pos */
            iadd
            iload 6 /* start */
            iload 5 /* len */
            iadd
            invokevirtual org.jcodings.Encoding.leftAdjustCharHead:([BIII)I
            iload 6 /* start */
            isub
            ireturn
        end local 6 // int start
         9: .line 1808
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            ireturn
        end local 5 // int len
        end local 4 // org.jruby.util.ByteList value
        end local 3 // boolean reverse
        end local 2 // int pos
        end local 1 // org.jcodings.Encoding enc
        end local 0 // org.jruby.RubyString str
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0      str  Lorg/jruby/RubyString;
            0   10     1      enc  Lorg/jcodings/Encoding;
            0   10     2      pos  I
            0   10     3  reverse  Z
            1   10     4    value  Lorg/jruby/util/ByteList;
            2   10     5      len  I
            4    9     6    start  I
    MethodParameters:
         Name  Flags
      str      
      enc      
      pos      
      reverse  

  private static org.jruby.runtime.builtin.IRubyObject operandNoCheck(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject str
         0: .line 1812
            aload 0 /* str */
            iconst_0
            invokestatic org.jruby.RubyRegexp.regOperand:(Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   str  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      str   

  private static org.jruby.RubyString operandCheck(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject str
         0: .line 1816
            aload 0 /* str */
            iconst_1
            invokestatic org.jruby.RubyRegexp.regOperand:(Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyString
            areturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   str  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      str   

  private static org.jruby.runtime.builtin.IRubyObject regOperand(org.jruby.runtime.builtin.IRubyObject, boolean);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject str
        start local 1 // boolean check
         0: .line 1821
            aload 0 /* str */
            instanceof org.jruby.RubySymbol
            ifeq 1
            aload 0 /* str */
            checkcast org.jruby.RubySymbol
            invokevirtual org.jruby.RubySymbol.to_s:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         1: .line 1822
      StackMap locals:
      StackMap stack:
            iload 1 /* check */
            ifeq 2
            aload 0 /* str */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 0 /* str */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.checkStringType:()Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         3: areturn
        end local 1 // boolean check
        end local 0 // org.jruby.runtime.builtin.IRubyObject str
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0    str  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     1  check  Z
    MethodParameters:
       Name  Flags
      str    
      check  

  public static org.jruby.RubyRegexp unmarshalFrom(org.jruby.runtime.marshal.UnmarshalStream);
    descriptor: (Lorg/jruby/runtime/marshal/UnmarshalStream;)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.jruby.runtime.marshal.UnmarshalStream input
         0: .line 1827
            aload 0 /* input */
            invokevirtual org.jruby.runtime.marshal.UnmarshalStream.getRuntime:()Lorg/jruby/Ruby;
            aload 0 /* input */
            invokevirtual org.jruby.runtime.marshal.UnmarshalStream.unmarshalString:()Lorg/jruby/util/ByteList;
            aload 0 /* input */
            invokevirtual org.jruby.runtime.marshal.UnmarshalStream.readSignedByte:()B
            invokestatic org.jruby.util.RegexpOptions.fromJoniOptions:(I)Lorg/jruby/util/RegexpOptions;
            invokestatic org.jruby.RubyRegexp.newRegexp:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            astore 1 /* result */
        start local 1 // org.jruby.RubyRegexp result
         1: .line 1828
            aload 0 /* input */
            aload 1 /* result */
            invokevirtual org.jruby.runtime.marshal.UnmarshalStream.registerLinkTarget:(Lorg/jruby/runtime/builtin/IRubyObject;)V
         2: .line 1829
            aload 1 /* result */
            areturn
        end local 1 // org.jruby.RubyRegexp result
        end local 0 // org.jruby.runtime.marshal.UnmarshalStream input
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0   input  Lorg/jruby/runtime/marshal/UnmarshalStream;
            1    3     1  result  Lorg/jruby/RubyRegexp;
    Exceptions:
      throws java.io.IOException
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
       Name  Flags
      input  

  public static void marshalTo(org.jruby.RubyRegexp, org.jruby.runtime.marshal.MarshalStream);
    descriptor: (Lorg/jruby/RubyRegexp;Lorg/jruby/runtime/marshal/MarshalStream;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.RubyRegexp regexp
        start local 1 // org.jruby.runtime.marshal.MarshalStream output
         0: .line 1833
            aload 1 /* output */
            aload 0 /* regexp */
            invokevirtual org.jruby.runtime.marshal.MarshalStream.registerLinkTarget:(Lorg/jruby/runtime/builtin/IRubyObject;)V
         1: .line 1834
            aload 1 /* output */
            aload 0 /* regexp */
            getfield org.jruby.RubyRegexp.str:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.runtime.marshal.MarshalStream.writeString:(Lorg/jruby/util/ByteList;)V
         2: .line 1836
            aload 0 /* regexp */
            getfield org.jruby.RubyRegexp.pattern:Lorg/joni/Regex;
            invokevirtual org.joni.Regex.getOptions:()I
            bipush 7
            iand
            istore 2 /* options */
        start local 2 // int options
         3: .line 1838
            aload 0 /* regexp */
            invokevirtual org.jruby.RubyRegexp.getOptions:()Lorg/jruby/util/RegexpOptions;
            invokevirtual org.jruby.util.RegexpOptions.isFixed:()Z
            ifeq 4
            iload 2 /* options */
            bipush 16
            ior
            istore 2 /* options */
         4: .line 1840
      StackMap locals: int
      StackMap stack:
            aload 1 /* output */
            iload 2 /* options */
            invokevirtual org.jruby.runtime.marshal.MarshalStream.writeByte:(I)V
         5: .line 1841
            return
        end local 2 // int options
        end local 1 // org.jruby.runtime.marshal.MarshalStream output
        end local 0 // org.jruby.RubyRegexp regexp
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0   regexp  Lorg/jruby/RubyRegexp;
            0    6     1   output  Lorg/jruby/runtime/marshal/MarshalStream;
            3    6     2  options  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      regexp  
      output  

  public org.jruby.runtime.builtin.IRubyObject to_s();
    descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.jruby.RubyRegexp.to_s:()Lorg/jruby/RubyString;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "RubyRegexp.java"
NestMembers:
  org.jruby.RubyRegexp$1  org.jruby.RubyRegexp$SearchMatchTask
InnerClasses:
  public final JavaClassKindOf = org.jruby.RubyModule$JavaClassKindOf of org.jruby.RubyModule
  org.jruby.RubyRegexp$1
  private SearchMatchTask = org.jruby.RubyRegexp$SearchMatchTask of org.jruby.RubyRegexp
  public abstract Task = org.jruby.RubyThread$Task of org.jruby.RubyThread
  public final ID = org.jruby.common.IRubyWarnings$ID of org.jruby.common.IRubyWarnings
  public final ErrorMode = org.jruby.util.RegexpSupport$ErrorMode of org.jruby.util.RegexpSupport
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyClass(name = {"Regexp"})