public class org.jruby.RubyEncoding extends org.jruby.RubyObject implements org.jruby.compiler.Constantizable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.RubyEncoding
  super_class: org.jruby.RubyObject
{
  public static final java.nio.charset.Charset UTF8;
    descriptor: Ljava/nio/charset/Charset;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final java.nio.charset.Charset UTF16;
    descriptor: Ljava/nio/charset/Charset;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final java.nio.charset.Charset ISO;
    descriptor: Ljava/nio/charset/Charset;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.util.ByteList LOCALE;
    descriptor: Lorg/jruby/util/ByteList;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.util.ByteList EXTERNAL;
    descriptor: Lorg/jruby/util/ByteList;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.util.ByteList FILESYSTEM;
    descriptor: Lorg/jruby/util/ByteList;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.util.ByteList INTERNAL;
    descriptor: Lorg/jruby/util/ByteList;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private org.jcodings.Encoding encoding;
    descriptor: Lorg/jcodings/Encoding;
    flags: (0x0002) ACC_PRIVATE

  private final org.jruby.util.ByteList name;
    descriptor: Lorg/jruby/util/ByteList;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean isDummy;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.Object constant;
    descriptor: Ljava/lang/Object;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private static final java.lang.ThreadLocal<java.lang.ref.SoftReference<org.jruby.RubyEncoding$UTF8Coder>> UTF8_CODER;
    descriptor: Ljava/lang/ThreadLocal;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/lang/ThreadLocal<Ljava/lang/ref/SoftReference<Lorg/jruby/RubyEncoding$UTF8Coder;>;>;

  private static final java.lang.ThreadLocal<java.lang.ref.SoftReference<org.jruby.RubyEncoding$ISOCoder>> ISO_CODER;
    descriptor: Ljava/lang/ThreadLocal;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/lang/ThreadLocal<Ljava/lang/ref/SoftReference<Lorg/jruby/RubyEncoding$ISOCoder;>;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 64
            getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
            putstatic org.jruby.RubyEncoding.UTF8:Ljava/nio/charset/Charset;
         1: .line 65
            getstatic java.nio.charset.StandardCharsets.UTF_16:Ljava/nio/charset/Charset;
            putstatic org.jruby.RubyEncoding.UTF16:Ljava/nio/charset/Charset;
         2: .line 66
            getstatic java.nio.charset.StandardCharsets.ISO_8859_1:Ljava/nio/charset/Charset;
            putstatic org.jruby.RubyEncoding.ISO:Ljava/nio/charset/Charset;
         3: .line 68
            new org.jruby.util.ByteList
            dup
            ldc "locale"
            invokestatic org.jruby.RubyEncoding.encodeISO:(Ljava/lang/CharSequence;)[B
            iconst_0
            invokespecial org.jruby.util.ByteList.<init>:([BZ)V
            putstatic org.jruby.RubyEncoding.LOCALE:Lorg/jruby/util/ByteList;
         4: .line 69
            new org.jruby.util.ByteList
            dup
            ldc "external"
            invokestatic org.jruby.RubyEncoding.encodeISO:(Ljava/lang/CharSequence;)[B
            iconst_0
            invokespecial org.jruby.util.ByteList.<init>:([BZ)V
            putstatic org.jruby.RubyEncoding.EXTERNAL:Lorg/jruby/util/ByteList;
         5: .line 70
            new org.jruby.util.ByteList
            dup
            ldc "filesystem"
            invokestatic org.jruby.RubyEncoding.encodeISO:(Ljava/lang/CharSequence;)[B
            iconst_0
            invokespecial org.jruby.util.ByteList.<init>:([BZ)V
            putstatic org.jruby.RubyEncoding.FILESYSTEM:Lorg/jruby/util/ByteList;
         6: .line 71
            new org.jruby.util.ByteList
            dup
            ldc "internal"
            invokestatic org.jruby.RubyEncoding.encodeISO:(Ljava/lang/CharSequence;)[B
            iconst_0
            invokespecial org.jruby.util.ByteList.<init>:([BZ)V
            putstatic org.jruby.RubyEncoding.INTERNAL:Lorg/jruby/util/ByteList;
         7: .line 410
            new java.lang.ThreadLocal
            dup
            invokespecial java.lang.ThreadLocal.<init>:()V
            putstatic org.jruby.RubyEncoding.UTF8_CODER:Ljava/lang/ThreadLocal;
         8: .line 411
            new java.lang.ThreadLocal
            dup
            invokespecial java.lang.ThreadLocal.<init>:()V
            putstatic org.jruby.RubyEncoding.ISO_CODER:Ljava/lang/ThreadLocal;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.jruby.RubyClass createEncodingClass(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 74
            aload 0 /* runtime */
            ldc "Encoding"
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
            getstatic org.jruby.runtime.ObjectAllocator.NOT_ALLOCATABLE_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 /* encodingc */
        start local 1 // org.jruby.RubyClass encodingc
         1: .line 75
            aload 0 /* runtime */
            aload 1 /* encodingc */
            invokevirtual org.jruby.Ruby.setEncoding:(Lorg/jruby/RubyClass;)V
         2: .line 76
            aload 1 /* encodingc */
            getstatic org.jruby.runtime.ClassIndex.ENCODING:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.RubyClass.setClassIndex:(Lorg/jruby/runtime/ClassIndex;)V
         3: .line 77
            aload 1 /* encodingc */
            ldc Lorg/jruby/RubyEncoding;
            invokevirtual org.jruby.RubyClass.setReifiedClass:(Ljava/lang/Class;)V
         4: .line 78
            aload 1 /* encodingc */
            new org.jruby.RubyModule$JavaClassKindOf
            dup
            ldc Lorg/jruby/RubyEncoding;
            invokespecial org.jruby.RubyModule$JavaClassKindOf.<init>:(Ljava/lang/Class;)V
            putfield org.jruby.RubyClass.kindOf:Lorg/jruby/RubyModule$KindOf;
         5: .line 80
            aload 1 /* encodingc */
            invokevirtual org.jruby.RubyClass.getSingletonClass:()Lorg/jruby/RubyClass;
            ldc "allocate"
            invokevirtual org.jruby.RubyClass.undefineMethod:(Ljava/lang/String;)V
         6: .line 81
            aload 1 /* encodingc */
            ldc Lorg/jruby/RubyEncoding;
            invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
         7: .line 83
            aload 1 /* encodingc */
            areturn
        end local 1 // org.jruby.RubyClass encodingc
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0    runtime  Lorg/jruby/Ruby;
            1    8     1  encodingc  Lorg/jruby/RubyClass;
    MethodParameters:
         Name  Flags
      runtime  

  private void <init>(org.jruby.Ruby, byte[], int, int, boolean);
    descriptor: (Lorg/jruby/Ruby;[BIIZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // org.jruby.RubyEncoding this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // byte[] name
        start local 3 // int p
        start local 4 // int end
        start local 5 // boolean isDummy
         0: .line 92
            aload 0 /* this */
            aload 1 /* runtime */
            new org.jruby.util.ByteList
            dup
            aload 2 /* name */
            iload 3 /* p */
            iload 4 /* end */
            invokespecial org.jruby.util.ByteList.<init>:([BII)V
            aconst_null
            iload 5 /* isDummy */
            invokespecial org.jruby.RubyEncoding.<init>:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Z)V
         1: .line 93
            return
        end local 5 // boolean isDummy
        end local 4 // int end
        end local 3 // int p
        end local 2 // byte[] name
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyEncoding this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyEncoding;
            0    2     1  runtime  Lorg/jruby/Ruby;
            0    2     2     name  [B
            0    2     3        p  I
            0    2     4      end  I
            0    2     5  isDummy  Z
    MethodParameters:
         Name  Flags
      runtime  
      name     
      p        
      end      
      isDummy  

  private void <init>(org.jruby.Ruby, byte[], org.jcodings.Encoding, boolean);
    descriptor: (Lorg/jruby/Ruby;[BLorg/jcodings/Encoding;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.jruby.RubyEncoding this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // byte[] name
        start local 3 // org.jcodings.Encoding encoding
        start local 4 // boolean isDummy
         0: .line 96
            aload 0 /* this */
            aload 1 /* runtime */
            new org.jruby.util.ByteList
            dup
            aload 2 /* name */
            invokespecial org.jruby.util.ByteList.<init>:([B)V
            aload 3 /* encoding */
            iload 4 /* isDummy */
            invokespecial org.jruby.RubyEncoding.<init>:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Z)V
         1: .line 97
            return
        end local 4 // boolean isDummy
        end local 3 // org.jcodings.Encoding encoding
        end local 2 // byte[] name
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyEncoding this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/jruby/RubyEncoding;
            0    2     1   runtime  Lorg/jruby/Ruby;
            0    2     2      name  [B
            0    2     3  encoding  Lorg/jcodings/Encoding;
            0    2     4   isDummy  Z
    MethodParameters:
          Name  Flags
      runtime   
      name      
      encoding  
      isDummy   

  private void <init>(org.jruby.Ruby, org.jruby.util.ByteList, org.jcodings.Encoding, boolean);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // org.jruby.RubyEncoding this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.util.ByteList name
        start local 3 // org.jcodings.Encoding encoding
        start local 4 // boolean isDummy
         0: .line 100
            aload 0 /* this */
            aload 1 /* runtime */
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getEncoding:()Lorg/jruby/RubyClass;
            invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
         1: .line 101
            aload 0 /* this */
            aload 2 /* name */
            putfield org.jruby.RubyEncoding.name:Lorg/jruby/util/ByteList;
         2: .line 102
            aload 0 /* this */
            iload 4 /* isDummy */
            putfield org.jruby.RubyEncoding.isDummy:Z
         3: .line 103
            aload 0 /* this */
            aload 3 /* encoding */
            putfield org.jruby.RubyEncoding.encoding:Lorg/jcodings/Encoding;
         4: .line 105
            aload 0 /* this */
            ldc Lorg/jruby/RubyEncoding;
            aload 0 /* this */
            invokestatic org.jruby.runtime.opto.OptoFactory.newConstantWrapper:(Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/Object;
            putfield org.jruby.RubyEncoding.constant:Ljava/lang/Object;
         5: .line 106
            return
        end local 4 // boolean isDummy
        end local 3 // org.jcodings.Encoding encoding
        end local 2 // org.jruby.util.ByteList name
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyEncoding this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/jruby/RubyEncoding;
            0    6     1   runtime  Lorg/jruby/Ruby;
            0    6     2      name  Lorg/jruby/util/ByteList;
            0    6     3  encoding  Lorg/jcodings/Encoding;
            0    6     4   isDummy  Z
    MethodParameters:
          Name  Flags
      runtime   
      name      
      encoding  
      isDummy   

  public java.lang.Object constant();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyEncoding this
         0: .line 113
            aload 0 /* this */
            getfield org.jruby.RubyEncoding.constant:Ljava/lang/Object;
            areturn
        end local 0 // org.jruby.RubyEncoding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyEncoding;

  public static org.jruby.RubyEncoding newEncoding(org.jruby.Ruby, byte[], int, int, boolean);
    descriptor: (Lorg/jruby/Ruby;[BIIZ)Lorg/jruby/RubyEncoding;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // org.jruby.Ruby runtime
        start local 1 // byte[] name
        start local 2 // int p
        start local 3 // int end
        start local 4 // boolean isDummy
         0: .line 117
            new org.jruby.RubyEncoding
            dup
            aload 0 /* runtime */
            aload 1 /* name */
            iload 2 /* p */
            iload 3 /* end */
            iload 4 /* isDummy */
            invokespecial org.jruby.RubyEncoding.<init>:(Lorg/jruby/Ruby;[BIIZ)V
            areturn
        end local 4 // boolean isDummy
        end local 3 // int end
        end local 2 // int p
        end local 1 // byte[] name
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1     name  [B
            0    1     2        p  I
            0    1     3      end  I
            0    1     4  isDummy  Z
    MethodParameters:
         Name  Flags
      runtime  
      name     
      p        
      end      
      isDummy  

  public final org.jcodings.Encoding getEncoding();
    descriptor: ()Lorg/jcodings/Encoding;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.RubyEncoding this
         0: .line 121
            aload 0 /* this */
            getfield org.jruby.RubyEncoding.encoding:Lorg/jcodings/Encoding;
            ifnonnull 1
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.RubyEncoding.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            aload 0 /* this */
            getfield org.jruby.RubyEncoding.name:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.runtime.encoding.EncodingService.loadEncoding:(Lorg/jruby/util/ByteList;)Lorg/jcodings/Encoding;
            putfield org.jruby.RubyEncoding.encoding:Lorg/jcodings/Encoding;
         1: .line 122
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyEncoding.encoding:Lorg/jcodings/Encoding;
            areturn
        end local 0 // org.jruby.RubyEncoding this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyEncoding;

  private static org.jcodings.Encoding extractEncodingFromObject(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jcodings/Encoding;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 126
            aload 0 /* obj */
            instanceof org.jruby.RubyEncoding
            ifeq 1
            aload 0 /* obj */
            checkcast org.jruby.RubyEncoding
            invokevirtual org.jruby.RubyEncoding.getEncoding:()Lorg/jcodings/Encoding;
            areturn
         1: .line 127
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            instanceof org.jruby.runtime.encoding.EncodingCapable
            ifeq 2
            aload 0 /* obj */
            checkcast org.jruby.runtime.encoding.EncodingCapable
            invokeinterface org.jruby.runtime.encoding.EncodingCapable.getEncoding:()Lorg/jcodings/Encoding;
            areturn
         2: .line 129
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject obj
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   obj  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      obj   

  public static org.jcodings.Encoding areCompatible(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jcodings/Encoding;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject obj1
        start local 1 // org.jruby.runtime.builtin.IRubyObject obj2
         0: .line 133
            aload 0 /* obj1 */
            invokestatic org.jruby.RubyEncoding.extractEncodingFromObject:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jcodings/Encoding;
            astore 2 /* enc1 */
        start local 2 // org.jcodings.Encoding enc1
         1: .line 134
            aload 1 /* obj2 */
            invokestatic org.jruby.RubyEncoding.extractEncodingFromObject:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jcodings/Encoding;
            astore 3 /* enc2 */
        start local 3 // org.jcodings.Encoding enc2
         2: .line 136
            aload 2 /* enc1 */
            ifnull 3
            aload 3 /* enc2 */
            ifnonnull 4
      StackMap locals: org.jcodings.Encoding org.jcodings.Encoding
      StackMap stack:
         3: aconst_null
            areturn
         4: .line 137
      StackMap locals:
      StackMap stack:
            aload 2 /* enc1 */
            aload 3 /* enc2 */
            if_acmpne 5
            aload 2 /* enc1 */
            areturn
         5: .line 139
      StackMap locals:
      StackMap stack:
            aload 1 /* obj2 */
            instanceof org.jruby.RubyString
            ifeq 6
            aload 1 /* obj2 */
            checkcast org.jruby.RubyString
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            ifne 6
            aload 2 /* enc1 */
            areturn
         6: .line 140
      StackMap locals:
      StackMap stack:
            aload 0 /* obj1 */
            instanceof org.jruby.RubyString
            ifeq 11
            aload 0 /* obj1 */
            checkcast org.jruby.RubyString
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            ifne 11
         7: .line 141
            aload 2 /* enc1 */
            invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
            ifeq 9
            aload 1 /* obj2 */
            instanceof org.jruby.RubyString
            ifeq 9
         8: .line 142
            aload 1 /* obj2 */
            checkcast org.jruby.RubyString
            invokevirtual org.jruby.RubyString.isAsciiOnly:()Z
            ifeq 9
            aload 2 /* enc1 */
            goto 10
      StackMap locals:
      StackMap stack:
         9: aload 3 /* enc2 */
        10: .line 141
      StackMap locals:
      StackMap stack: org.jcodings.Encoding
            areturn
        11: .line 145
      StackMap locals:
      StackMap stack:
            aload 2 /* enc1 */
            invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
            ifeq 12
            aload 3 /* enc2 */
            invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
            ifne 13
      StackMap locals:
      StackMap stack:
        12: aconst_null
            areturn
        13: .line 147
      StackMap locals:
      StackMap stack:
            aload 1 /* obj2 */
            instanceof org.jruby.RubyString
            ifne 14
            aload 3 /* enc2 */
            instanceof org.jcodings.specific.USASCIIEncoding
            ifeq 14
            aload 2 /* enc1 */
            areturn
        14: .line 148
      StackMap locals:
      StackMap stack:
            aload 0 /* obj1 */
            instanceof org.jruby.RubyString
            ifne 15
            aload 2 /* enc1 */
            instanceof org.jcodings.specific.USASCIIEncoding
            ifeq 15
            aload 3 /* enc2 */
            areturn
        15: .line 150
      StackMap locals:
      StackMap stack:
            aload 0 /* obj1 */
            instanceof org.jruby.RubyString
            ifne 22
        16: .line 151
            aload 0 /* obj1 */
            astore 4 /* objTmp */
        start local 4 // org.jruby.runtime.builtin.IRubyObject objTmp
        17: .line 152
            aload 1 /* obj2 */
            astore 0 /* obj1 */
        18: .line 153
            aload 4 /* objTmp */
            astore 1 /* obj2 */
        19: .line 155
            aload 2 /* enc1 */
            astore 5 /* encTmp */
        start local 5 // org.jcodings.Encoding encTmp
        20: .line 156
            aload 3 /* enc2 */
            astore 2 /* enc1 */
        21: .line 157
            aload 5 /* encTmp */
            astore 3 /* enc2 */
        end local 5 // org.jcodings.Encoding encTmp
        end local 4 // org.jruby.runtime.builtin.IRubyObject objTmp
        22: .line 160
      StackMap locals:
      StackMap stack:
            aload 0 /* obj1 */
            instanceof org.jruby.RubyString
            ifeq 28
        23: .line 161
            aload 0 /* obj1 */
            checkcast org.jruby.RubyString
            invokevirtual org.jruby.RubyString.scanForCodeRange:()I
            istore 4 /* cr1 */
        start local 4 // int cr1
        24: .line 162
            aload 1 /* obj2 */
            instanceof org.jruby.RubyString
            ifeq 27
        25: .line 163
            aload 1 /* obj2 */
            checkcast org.jruby.RubyString
            invokevirtual org.jruby.RubyString.scanForCodeRange:()I
            istore 5 /* cr2 */
        start local 5 // int cr2
        26: .line 164
            aload 2 /* enc1 */
            iload 4 /* cr1 */
            aload 3 /* enc2 */
            iload 5 /* cr2 */
            invokestatic org.jruby.RubyEncoding.areCompatible:(Lorg/jcodings/Encoding;ILorg/jcodings/Encoding;I)Lorg/jcodings/Encoding;
            areturn
        end local 5 // int cr2
        27: .line 166
      StackMap locals: int
      StackMap stack:
            iload 4 /* cr1 */
            bipush 16
            if_icmpne 28
            aload 3 /* enc2 */
            areturn
        end local 4 // int cr1
        28: .line 169
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // org.jcodings.Encoding enc2
        end local 2 // org.jcodings.Encoding enc1
        end local 1 // org.jruby.runtime.builtin.IRubyObject obj2
        end local 0 // org.jruby.runtime.builtin.IRubyObject obj1
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   29     0    obj1  Lorg/jruby/runtime/builtin/IRubyObject;
            0   29     1    obj2  Lorg/jruby/runtime/builtin/IRubyObject;
            1   29     2    enc1  Lorg/jcodings/Encoding;
            2   29     3    enc2  Lorg/jcodings/Encoding;
           17   22     4  objTmp  Lorg/jruby/runtime/builtin/IRubyObject;
           20   22     5  encTmp  Lorg/jcodings/Encoding;
           24   28     4     cr1  I
           26   27     5     cr2  I
    MethodParameters:
      Name  Flags
      obj1  
      obj2  

  public static org.jcodings.Encoding areCompatible(org.jcodings.Encoding, int, org.jcodings.Encoding, int);
    descriptor: (Lorg/jcodings/Encoding;ILorg/jcodings/Encoding;I)Lorg/jcodings/Encoding;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.jcodings.Encoding enc1
        start local 1 // int cr1
        start local 2 // org.jcodings.Encoding enc2
        start local 3 // int cr2
         0: .line 174
            iload 1 /* cr1 */
            iload 3 /* cr2 */
            if_icmpeq 3
         1: .line 176
            iload 1 /* cr1 */
            bipush 16
            if_icmpne 2
            aload 2 /* enc2 */
            areturn
         2: .line 177
      StackMap locals:
      StackMap stack:
            iload 3 /* cr2 */
            bipush 16
            if_icmpne 3
            aload 0 /* enc1 */
            areturn
         3: .line 179
      StackMap locals:
      StackMap stack:
            iload 3 /* cr2 */
            bipush 16
            if_icmpne 4
            aload 0 /* enc1 */
            areturn
         4: .line 180
      StackMap locals:
      StackMap stack:
            iload 1 /* cr1 */
            bipush 16
            if_icmpne 5
            aload 2 /* enc2 */
            areturn
         5: .line 181
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // int cr2
        end local 2 // org.jcodings.Encoding enc2
        end local 1 // int cr1
        end local 0 // org.jcodings.Encoding enc1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  enc1  Lorg/jcodings/Encoding;
            0    6     1   cr1  I
            0    6     2  enc2  Lorg/jcodings/Encoding;
            0    6     3   cr2  I
    MethodParameters:
      Name  Flags
      enc1  
      cr1   
      enc2  
      cr2   

  public static byte[] encodeUTF8(java.lang.String);
    descriptor: (Ljava/lang/String;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String str
         0: .line 185
            aload 0 /* str */
            invokestatic org.jruby.RubyEncoding.encodeUTF8:(Ljava/lang/CharSequence;)[B
            areturn
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   str  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      str   

  public static byte[] encodeUTF8(java.lang.CharSequence);
    descriptor: (Ljava/lang/CharSequence;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.CharSequence str
         0: .line 189
            aload 0 /* str */
            invokeinterface java.lang.CharSequence.length:()I
            sipush 1024
            if_icmple 2
         1: .line 190
            getstatic org.jruby.RubyEncoding.UTF8:Ljava/nio/charset/Charset;
            aload 0 /* str */
            invokestatic org.jruby.RubyEncoding.toCharBuffer:(Ljava/lang/CharSequence;)Ljava/nio/CharBuffer;
            invokevirtual java.nio.charset.Charset.encode:(Ljava/nio/CharBuffer;)Ljava/nio/ByteBuffer;
            invokestatic org.jruby.RubyEncoding.getBytes:(Ljava/nio/ByteBuffer;)[B
            areturn
         2: .line 192
      StackMap locals:
      StackMap stack:
            invokestatic org.jruby.RubyEncoding.getUTF8Coder:()Lorg/jruby/RubyEncoding$UTF8Coder;
            aload 0 /* str */
            invokevirtual org.jruby.RubyEncoding$UTF8Coder.encode:(Ljava/lang/CharSequence;)Ljava/nio/ByteBuffer;
            invokestatic org.jruby.RubyEncoding.getBytes:(Ljava/nio/ByteBuffer;)[B
            areturn
        end local 0 // java.lang.CharSequence str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   str  Ljava/lang/CharSequence;
    MethodParameters:
      Name  Flags
      str   

  public static byte[] encodeISO(java.lang.CharSequence);
    descriptor: (Ljava/lang/CharSequence;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.CharSequence str
         0: .line 196
            aload 0 /* str */
            invokestatic org.jruby.RubyEncoding.encodeISOLoop:(Ljava/lang/CharSequence;)[B
            areturn
        end local 0 // java.lang.CharSequence str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   str  Ljava/lang/CharSequence;
    MethodParameters:
      Name  Flags
      str   

  public static byte[] encodeISO(char[]);
    descriptor: ([C)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char[] str
         0: .line 200
            aload 0 /* str */
            invokestatic org.jruby.RubyEncoding.encodeISOLoop:([C)[B
            areturn
        end local 0 // char[] str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   str  [C
    MethodParameters:
      Name  Flags
      str   

  private static byte[] encodeISOLoop(char[]);
    descriptor: ([C)[B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // char[] s
         0: .line 204
            aload 0 /* s */
            arraylength
            istore 1 /* length */
        start local 1 // int length
         1: .line 205
            iload 1 /* length */
            newarray 8
            astore 2 /* bytes */
        start local 2 // byte[] bytes
         2: .line 206
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 6
         4: .line 207
      StackMap locals: int byte[] int
      StackMap stack:
            aload 2 /* bytes */
            iload 3 /* i */
            aload 0 /* s */
            iload 3 /* i */
            caload
            i2b
            bastore
         5: .line 206
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            iload 1 /* length */
            if_icmplt 4
        end local 3 // int i
         7: .line 209
            aload 2 /* bytes */
            areturn
        end local 2 // byte[] bytes
        end local 1 // int length
        end local 0 // char[] s
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0       s  [C
            1    8     1  length  I
            2    8     2   bytes  [B
            3    7     3       i  I
    MethodParameters:
      Name  Flags
      s     

  private static byte[] encodeISOLoop(java.lang.CharSequence);
    descriptor: (Ljava/lang/CharSequence;)[B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // java.lang.CharSequence s
         0: .line 213
            aload 0 /* s */
            invokeinterface java.lang.CharSequence.length:()I
            istore 1 /* length */
        start local 1 // int length
         1: .line 214
            iload 1 /* length */
            newarray 8
            astore 2 /* bytes */
        start local 2 // byte[] bytes
         2: .line 215
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 6
         4: .line 216
      StackMap locals: int byte[] int
      StackMap stack:
            aload 2 /* bytes */
            iload 3 /* i */
            aload 0 /* s */
            iload 3 /* i */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            i2b
            bastore
         5: .line 215
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            iload 1 /* length */
            if_icmplt 4
        end local 3 // int i
         7: .line 218
            aload 2 /* bytes */
            areturn
        end local 2 // byte[] bytes
        end local 1 // int length
        end local 0 // java.lang.CharSequence s
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0       s  Ljava/lang/CharSequence;
            1    8     1  length  I
            2    8     2   bytes  [B
            3    7     3       i  I
    MethodParameters:
      Name  Flags
      s     

  static org.jruby.util.ByteList doEncodeUTF8(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/jruby/util/ByteList;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String str
         0: .line 222
            aload 0 /* str */
            invokevirtual java.lang.String.length:()I
            sipush 1024
            if_icmple 2
         1: .line 223
            getstatic org.jruby.RubyEncoding.UTF8:Ljava/nio/charset/Charset;
            aload 0 /* str */
            invokestatic java.nio.CharBuffer.wrap:(Ljava/lang/CharSequence;)Ljava/nio/CharBuffer;
            invokevirtual java.nio.charset.Charset.encode:(Ljava/nio/CharBuffer;)Ljava/nio/ByteBuffer;
            getstatic org.jcodings.specific.UTF8Encoding.INSTANCE:Lorg/jcodings/specific/UTF8Encoding;
            iconst_0
            invokestatic org.jruby.RubyEncoding.getByteList:(Ljava/nio/ByteBuffer;Lorg/jcodings/Encoding;Z)Lorg/jruby/util/ByteList;
            areturn
         2: .line 225
      StackMap locals:
      StackMap stack:
            invokestatic org.jruby.RubyEncoding.getUTF8Coder:()Lorg/jruby/RubyEncoding$UTF8Coder;
            aload 0 /* str */
            invokevirtual org.jruby.RubyEncoding$UTF8Coder.encode:(Ljava/lang/String;)Ljava/nio/ByteBuffer;
            getstatic org.jcodings.specific.UTF8Encoding.INSTANCE:Lorg/jcodings/specific/UTF8Encoding;
            iconst_1
            invokestatic org.jruby.RubyEncoding.getByteList:(Ljava/nio/ByteBuffer;Lorg/jcodings/Encoding;Z)Lorg/jruby/util/ByteList;
            areturn
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   str  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      str   

  static org.jruby.util.ByteList doEncodeUTF8(java.lang.CharSequence);
    descriptor: (Ljava/lang/CharSequence;)Lorg/jruby/util/ByteList;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.CharSequence str
         0: .line 229
            aload 0 /* str */
            invokeinterface java.lang.CharSequence.length:()I
            sipush 1024
            if_icmple 2
         1: .line 230
            getstatic org.jruby.RubyEncoding.UTF8:Ljava/nio/charset/Charset;
            aload 0 /* str */
            invokestatic org.jruby.RubyEncoding.toCharBuffer:(Ljava/lang/CharSequence;)Ljava/nio/CharBuffer;
            invokevirtual java.nio.charset.Charset.encode:(Ljava/nio/CharBuffer;)Ljava/nio/ByteBuffer;
            getstatic org.jcodings.specific.UTF8Encoding.INSTANCE:Lorg/jcodings/specific/UTF8Encoding;
            iconst_0
            invokestatic org.jruby.RubyEncoding.getByteList:(Ljava/nio/ByteBuffer;Lorg/jcodings/Encoding;Z)Lorg/jruby/util/ByteList;
            areturn
         2: .line 232
      StackMap locals:
      StackMap stack:
            invokestatic org.jruby.RubyEncoding.getUTF8Coder:()Lorg/jruby/RubyEncoding$UTF8Coder;
            aload 0 /* str */
            invokevirtual org.jruby.RubyEncoding$UTF8Coder.encode:(Ljava/lang/CharSequence;)Ljava/nio/ByteBuffer;
            getstatic org.jcodings.specific.UTF8Encoding.INSTANCE:Lorg/jcodings/specific/UTF8Encoding;
            iconst_1
            invokestatic org.jruby.RubyEncoding.getByteList:(Ljava/nio/ByteBuffer;Lorg/jcodings/Encoding;Z)Lorg/jruby/util/ByteList;
            areturn
        end local 0 // java.lang.CharSequence str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   str  Ljava/lang/CharSequence;
    MethodParameters:
      Name  Flags
      str   

  private static java.nio.CharBuffer toCharBuffer(java.lang.CharSequence);
    descriptor: (Ljava/lang/CharSequence;)Ljava/nio/CharBuffer;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.CharSequence str
         0: .line 236
            aload 0 /* str */
            instanceof java.nio.CharBuffer
            ifeq 1
            aload 0 /* str */
            checkcast java.nio.CharBuffer
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* str */
            invokestatic java.nio.CharBuffer.wrap:(Ljava/lang/CharSequence;)Ljava/nio/CharBuffer;
      StackMap locals:
      StackMap stack: java.nio.CharBuffer
         2: areturn
        end local 0 // java.lang.CharSequence str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   str  Ljava/lang/CharSequence;
    MethodParameters:
      Name  Flags
      str   

  private static byte[] getBytes(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)[B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.nio.ByteBuffer buffer
         0: .line 240
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.limit:()I
            newarray 8
            astore 1 /* bytes */
        start local 1 // byte[] bytes
         1: .line 241
            aload 0 /* buffer */
            aload 1 /* bytes */
            invokevirtual java.nio.ByteBuffer.get:([B)Ljava/nio/ByteBuffer;
            pop
         2: .line 242
            aload 1 /* bytes */
            areturn
        end local 1 // byte[] bytes
        end local 0 // java.nio.ByteBuffer buffer
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0  buffer  Ljava/nio/ByteBuffer;
            1    3     1   bytes  [B
    MethodParameters:
        Name  Flags
      buffer  final

  private static org.jruby.util.ByteList getByteList(java.nio.ByteBuffer, org.jcodings.Encoding, boolean);
    descriptor: (Ljava/nio/ByteBuffer;Lorg/jcodings/Encoding;Z)Lorg/jruby/util/ByteList;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // java.nio.ByteBuffer buffer
        start local 1 // org.jcodings.Encoding enc
        start local 2 // boolean shared
         0: .line 247
            iload 2 /* shared */
            ifne 4
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.hasArray:()Z
            ifeq 4
         1: .line 248
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.array:()[B
            astore 3 /* bytes */
        start local 3 // byte[] bytes
         2: .line 249
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            istore 4 /* off */
        start local 4 // int off
         3: .line 250
            goto 6
        end local 4 // int off
        end local 3 // byte[] bytes
         4: .line 251
      StackMap locals:
      StackMap stack:
            aload 0 /* buffer */
            invokestatic org.jruby.RubyEncoding.getBytes:(Ljava/nio/ByteBuffer;)[B
            astore 3 /* bytes */
        start local 3 // byte[] bytes
         5: .line 252
            iconst_0
            istore 4 /* off */
        start local 4 // int off
         6: .line 254
      StackMap locals: byte[] int
      StackMap stack:
            new org.jruby.util.ByteList
            dup
            aload 3 /* bytes */
            iload 4 /* off */
            iload 4 /* off */
            aload 0 /* buffer */
            invokevirtual java.nio.ByteBuffer.limit:()I
            iadd
            aload 1 /* enc */
            iconst_0
            invokespecial org.jruby.util.ByteList.<init>:([BIILorg/jcodings/Encoding;Z)V
            areturn
        end local 4 // int off
        end local 3 // byte[] bytes
        end local 2 // boolean shared
        end local 1 // org.jcodings.Encoding enc
        end local 0 // java.nio.ByteBuffer buffer
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0  buffer  Ljava/nio/ByteBuffer;
            0    7     1     enc  Lorg/jcodings/Encoding;
            0    7     2  shared  Z
            2    4     3   bytes  [B
            5    7     3   bytes  [B
            3    4     4     off  I
            6    7     4     off  I
    MethodParameters:
        Name  Flags
      buffer  final
      enc     final
      shared  final

  public static byte[] encodeUTF16(java.lang.String);
    descriptor: (Ljava/lang/String;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String str
         0: .line 258
            aload 0 /* str */
            getstatic org.jruby.RubyEncoding.UTF16:Ljava/nio/charset/Charset;
            invokestatic org.jruby.RubyEncoding.encode:(Ljava/lang/String;Ljava/nio/charset/Charset;)[B
            areturn
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   str  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      str   

  public static byte[] encodeUTF16(java.lang.CharSequence);
    descriptor: (Ljava/lang/CharSequence;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.CharSequence str
         0: .line 262
            aload 0 /* str */
            getstatic org.jruby.RubyEncoding.UTF16:Ljava/nio/charset/Charset;
            invokestatic org.jruby.RubyEncoding.encode:(Ljava/lang/CharSequence;Ljava/nio/charset/Charset;)[B
            areturn
        end local 0 // java.lang.CharSequence str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   str  Ljava/lang/CharSequence;
    MethodParameters:
      Name  Flags
      str   

  static org.jruby.util.ByteList doEncodeUTF16(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/jruby/util/ByteList;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String str
         0: .line 266
            aload 0 /* str */
            getstatic org.jruby.RubyEncoding.UTF16:Ljava/nio/charset/Charset;
            getstatic org.jcodings.specific.UTF16BEEncoding.INSTANCE:Lorg/jcodings/specific/UTF16BEEncoding;
            invokestatic org.jruby.RubyEncoding.doEncode:(Ljava/lang/String;Ljava/nio/charset/Charset;Lorg/jcodings/Encoding;)Lorg/jruby/util/ByteList;
            areturn
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   str  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      str   

  static org.jruby.util.ByteList doEncodeUTF16(java.lang.CharSequence);
    descriptor: (Ljava/lang/CharSequence;)Lorg/jruby/util/ByteList;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.CharSequence str
         0: .line 270
            aload 0 /* str */
            getstatic org.jruby.RubyEncoding.UTF16:Ljava/nio/charset/Charset;
            getstatic org.jcodings.specific.UTF16BEEncoding.INSTANCE:Lorg/jcodings/specific/UTF16BEEncoding;
            invokestatic org.jruby.RubyEncoding.doEncode:(Ljava/lang/CharSequence;Ljava/nio/charset/Charset;Lorg/jcodings/Encoding;)Lorg/jruby/util/ByteList;
            areturn
        end local 0 // java.lang.CharSequence str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   str  Ljava/lang/CharSequence;
    MethodParameters:
      Name  Flags
      str   

  public static byte[] encode(java.lang.CharSequence, java.nio.charset.Charset);
    descriptor: (Ljava/lang/CharSequence;Ljava/nio/charset/Charset;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.lang.CharSequence cs
        start local 1 // java.nio.charset.Charset charset
         0: .line 274
            aload 1 /* charset */
            aload 0 /* cs */
            invokestatic java.nio.CharBuffer.wrap:(Ljava/lang/CharSequence;)Ljava/nio/CharBuffer;
            invokevirtual java.nio.charset.Charset.encode:(Ljava/nio/CharBuffer;)Ljava/nio/ByteBuffer;
            astore 2 /* buffer */
        start local 2 // java.nio.ByteBuffer buffer
         1: .line 275
            aload 2 /* buffer */
            invokevirtual java.nio.ByteBuffer.limit:()I
            newarray 8
            astore 3 /* bytes */
        start local 3 // byte[] bytes
         2: .line 276
            aload 2 /* buffer */
            aload 3 /* bytes */
            invokevirtual java.nio.ByteBuffer.get:([B)Ljava/nio/ByteBuffer;
            pop
         3: .line 277
            aload 3 /* bytes */
            areturn
        end local 3 // byte[] bytes
        end local 2 // java.nio.ByteBuffer buffer
        end local 1 // java.nio.charset.Charset charset
        end local 0 // java.lang.CharSequence cs
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0       cs  Ljava/lang/CharSequence;
            0    4     1  charset  Ljava/nio/charset/Charset;
            1    4     2   buffer  Ljava/nio/ByteBuffer;
            2    4     3    bytes  [B
    MethodParameters:
         Name  Flags
      cs       
      charset  

  static org.jruby.util.ByteList doEncode(java.lang.String, java.nio.charset.Charset, org.jcodings.Encoding);
    descriptor: (Ljava/lang/String;Ljava/nio/charset/Charset;Lorg/jcodings/Encoding;)Lorg/jruby/util/ByteList;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.lang.String cs
        start local 1 // java.nio.charset.Charset charset
        start local 2 // org.jcodings.Encoding enc
         0: .line 281
            aload 1 /* charset */
            aload 0 /* cs */
            invokestatic java.nio.CharBuffer.wrap:(Ljava/lang/CharSequence;)Ljava/nio/CharBuffer;
            invokevirtual java.nio.charset.Charset.encode:(Ljava/nio/CharBuffer;)Ljava/nio/ByteBuffer;
            aload 2 /* enc */
            iconst_0
            invokestatic org.jruby.RubyEncoding.getByteList:(Ljava/nio/ByteBuffer;Lorg/jcodings/Encoding;Z)Lorg/jruby/util/ByteList;
            areturn
        end local 2 // org.jcodings.Encoding enc
        end local 1 // java.nio.charset.Charset charset
        end local 0 // java.lang.String cs
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0       cs  Ljava/lang/String;
            0    1     1  charset  Ljava/nio/charset/Charset;
            0    1     2      enc  Lorg/jcodings/Encoding;
    MethodParameters:
         Name  Flags
      cs       
      charset  
      enc      

  static org.jruby.util.ByteList doEncode(java.lang.CharSequence, java.nio.charset.Charset, org.jcodings.Encoding);
    descriptor: (Ljava/lang/CharSequence;Ljava/nio/charset/Charset;Lorg/jcodings/Encoding;)Lorg/jruby/util/ByteList;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.lang.CharSequence cs
        start local 1 // java.nio.charset.Charset charset
        start local 2 // org.jcodings.Encoding enc
         0: .line 285
            aload 1 /* charset */
            aload 0 /* cs */
            invokestatic org.jruby.RubyEncoding.toCharBuffer:(Ljava/lang/CharSequence;)Ljava/nio/CharBuffer;
            invokevirtual java.nio.charset.Charset.encode:(Ljava/nio/CharBuffer;)Ljava/nio/ByteBuffer;
            aload 2 /* enc */
            iconst_0
            invokestatic org.jruby.RubyEncoding.getByteList:(Ljava/nio/ByteBuffer;Lorg/jcodings/Encoding;Z)Lorg/jruby/util/ByteList;
            areturn
        end local 2 // org.jcodings.Encoding enc
        end local 1 // java.nio.charset.Charset charset
        end local 0 // java.lang.CharSequence cs
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0       cs  Ljava/lang/CharSequence;
            0    1     1  charset  Ljava/nio/charset/Charset;
            0    1     2      enc  Lorg/jcodings/Encoding;
    MethodParameters:
         Name  Flags
      cs       
      charset  
      enc      

  public static byte[] encode(java.lang.String, java.nio.charset.Charset);
    descriptor: (Ljava/lang/String;Ljava/nio/charset/Charset;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.lang.String str
        start local 1 // java.nio.charset.Charset charset
         0: .line 289
            aload 1 /* charset */
            aload 0 /* str */
            invokevirtual java.nio.charset.Charset.encode:(Ljava/lang/String;)Ljava/nio/ByteBuffer;
            astore 2 /* buffer */
        start local 2 // java.nio.ByteBuffer buffer
         1: .line 290
            aload 2 /* buffer */
            invokevirtual java.nio.ByteBuffer.limit:()I
            newarray 8
            astore 3 /* bytes */
        start local 3 // byte[] bytes
         2: .line 291
            aload 2 /* buffer */
            aload 3 /* bytes */
            invokevirtual java.nio.ByteBuffer.get:([B)Ljava/nio/ByteBuffer;
            pop
         3: .line 292
            aload 3 /* bytes */
            areturn
        end local 3 // byte[] bytes
        end local 2 // java.nio.ByteBuffer buffer
        end local 1 // java.nio.charset.Charset charset
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0      str  Ljava/lang/String;
            0    4     1  charset  Ljava/nio/charset/Charset;
            1    4     2   buffer  Ljava/nio/ByteBuffer;
            2    4     3    bytes  [B
    MethodParameters:
         Name  Flags
      str      
      charset  

  public static java.lang.String decodeUTF8(byte[], int, int);
    descriptor: ([BII)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // byte[] bytes
        start local 1 // int start
        start local 2 // int length
         0: .line 296
            iload 2 /* length */
            sipush 1024
            if_icmple 2
         1: .line 297
            getstatic org.jruby.RubyEncoding.UTF8:Ljava/nio/charset/Charset;
            aload 0 /* bytes */
            iload 1 /* start */
            iload 2 /* length */
            invokestatic java.nio.ByteBuffer.wrap:([BII)Ljava/nio/ByteBuffer;
            invokevirtual java.nio.charset.Charset.decode:(Ljava/nio/ByteBuffer;)Ljava/nio/CharBuffer;
            invokevirtual java.nio.CharBuffer.toString:()Ljava/lang/String;
            areturn
         2: .line 299
      StackMap locals:
      StackMap stack:
            invokestatic org.jruby.RubyEncoding.getUTF8Coder:()Lorg/jruby/RubyEncoding$UTF8Coder;
            aload 0 /* bytes */
            iload 1 /* start */
            iload 2 /* length */
            invokevirtual org.jruby.RubyEncoding$UTF8Coder.decode:([BII)Ljava/nio/CharBuffer;
            invokevirtual java.nio.CharBuffer.toString:()Ljava/lang/String;
            areturn
        end local 2 // int length
        end local 1 // int start
        end local 0 // byte[] bytes
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0   bytes  [B
            0    3     1   start  I
            0    3     2  length  I
    MethodParameters:
        Name  Flags
      bytes   
      start   
      length  

  public static java.lang.String decodeISO(byte[], int, int);
    descriptor: ([BII)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // byte[] bytes
        start local 1 // int start
        start local 2 // int length
         0: .line 303
            iload 2 /* length */
            sipush 1024
            if_icmple 2
         1: .line 304
            new java.lang.String
            dup
            aload 0 /* bytes */
            iload 1 /* start */
            iload 2 /* length */
            invokestatic org.jruby.RubyEncoding.decodeISOLoop:([BII)[C
            invokespecial java.lang.String.<init>:([C)V
            areturn
         2: .line 306
      StackMap locals:
      StackMap stack:
            invokestatic org.jruby.RubyEncoding.getISOCoder:()Lorg/jruby/RubyEncoding$ISOCoder;
            aload 0 /* bytes */
            iload 1 /* start */
            iload 2 /* length */
            invokevirtual org.jruby.RubyEncoding$ISOCoder.decode:([BII)Ljava/lang/String;
            areturn
        end local 2 // int length
        end local 1 // int start
        end local 0 // byte[] bytes
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0   bytes  [B
            0    3     1   start  I
            0    3     2  length  I
    MethodParameters:
        Name  Flags
      bytes   
      start   
      length  

  public static java.lang.String decodeISO(org.jruby.util.ByteList);
    descriptor: (Lorg/jruby/util/ByteList;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.util.ByteList byteList
         0: .line 310
            aload 0 /* byteList */
            invokevirtual org.jruby.util.ByteList.unsafeBytes:()[B
            aload 0 /* byteList */
            invokevirtual org.jruby.util.ByteList.begin:()I
            aload 0 /* byteList */
            invokevirtual org.jruby.util.ByteList.realSize:()I
            invokestatic org.jruby.RubyEncoding.decodeISO:([BII)Ljava/lang/String;
            areturn
        end local 0 // org.jruby.util.ByteList byteList
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  byteList  Lorg/jruby/util/ByteList;
    MethodParameters:
          Name  Flags
      byteList  

  private static char[] decodeISOLoop(byte[], int, int);
    descriptor: ([BII)[C
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // byte[] s
        start local 1 // int start
        start local 2 // int length
         0: .line 314
            iload 2 /* length */
            newarray 5
            astore 3 /* chars */
        start local 3 // char[] chars
         1: .line 315
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 5
         3: .line 316
      StackMap locals: char[] int
      StackMap stack:
            aload 3 /* chars */
            iload 4 /* i */
            aload 0 /* s */
            iload 4 /* i */
            iload 1 /* start */
            iadd
            baload
            sipush 255
            iand
            i2c
            castore
         4: .line 315
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 4 /* i */
            iload 2 /* length */
            if_icmplt 3
        end local 4 // int i
         6: .line 318
            aload 3 /* chars */
            areturn
        end local 3 // char[] chars
        end local 2 // int length
        end local 1 // int start
        end local 0 // byte[] s
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0       s  [B
            0    7     1   start  I
            0    7     2  length  I
            1    7     3   chars  [C
            2    6     4       i  I
    MethodParameters:
        Name  Flags
      s       
      start   
      length  

  public static java.lang.String decodeUTF8(byte[]);
    descriptor: ([B)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // byte[] bytes
         0: .line 322
            aload 0 /* bytes */
            iconst_0
            aload 0 /* bytes */
            arraylength
            invokestatic org.jruby.RubyEncoding.decodeUTF8:([BII)Ljava/lang/String;
            areturn
        end local 0 // byte[] bytes
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  bytes  [B
    MethodParameters:
       Name  Flags
      bytes  

  public static java.lang.String decode(byte[], int, int, java.nio.charset.Charset);
    descriptor: ([BIILjava/nio/charset/Charset;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // byte[] bytes
        start local 1 // int start
        start local 2 // int length
        start local 3 // java.nio.charset.Charset charset
         0: .line 326
            aload 3 /* charset */
            aload 0 /* bytes */
            iload 1 /* start */
            iload 2 /* length */
            invokestatic java.nio.ByteBuffer.wrap:([BII)Ljava/nio/ByteBuffer;
            invokevirtual java.nio.charset.Charset.decode:(Ljava/nio/ByteBuffer;)Ljava/nio/CharBuffer;
            invokevirtual java.nio.CharBuffer.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.nio.charset.Charset charset
        end local 2 // int length
        end local 1 // int start
        end local 0 // byte[] bytes
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0    bytes  [B
            0    1     1    start  I
            0    1     2   length  I
            0    1     3  charset  Ljava/nio/charset/Charset;
    MethodParameters:
         Name  Flags
      bytes    
      start    
      length   
      charset  

  public static java.lang.String decode(byte[], java.nio.charset.Charset);
    descriptor: ([BLjava/nio/charset/Charset;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // byte[] bytes
        start local 1 // java.nio.charset.Charset charset
         0: .line 330
            aload 1 /* charset */
            aload 0 /* bytes */
            invokestatic java.nio.ByteBuffer.wrap:([B)Ljava/nio/ByteBuffer;
            invokevirtual java.nio.charset.Charset.decode:(Ljava/nio/ByteBuffer;)Ljava/nio/CharBuffer;
            invokevirtual java.nio.CharBuffer.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.nio.charset.Charset charset
        end local 0 // byte[] bytes
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0    bytes  [B
            0    1     1  charset  Ljava/nio/charset/Charset;
    MethodParameters:
         Name  Flags
      bytes    
      charset  

  private static org.jruby.RubyEncoding$UTF8Coder getUTF8Coder();
    descriptor: ()Lorg/jruby/RubyEncoding$UTF8Coder;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=0
         0: .line 415
            getstatic org.jruby.RubyEncoding.UTF8_CODER:Ljava/lang/ThreadLocal;
            invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
            checkcast java.lang.ref.SoftReference
            astore 1 /* ref */
        start local 1 // java.lang.ref.SoftReference ref
         1: .line 416
            aload 1 /* ref */
            ifnull 3
            aload 1 /* ref */
            invokevirtual java.lang.ref.SoftReference.get:()Ljava/lang/Object;
            checkcast org.jruby.RubyEncoding$UTF8Coder
            dup
            astore 0 /* coder */
        start local 0 // org.jruby.RubyEncoding$UTF8Coder coder
         2: ifnonnull 5
        end local 0 // org.jruby.RubyEncoding$UTF8Coder coder
         3: .line 417
      StackMap locals: top java.lang.ref.SoftReference
      StackMap stack:
            new org.jruby.RubyEncoding$UTF8Coder
            dup
            invokespecial org.jruby.RubyEncoding$UTF8Coder.<init>:()V
            astore 0 /* coder */
        start local 0 // org.jruby.RubyEncoding$UTF8Coder coder
         4: .line 418
            getstatic org.jruby.RubyEncoding.UTF8_CODER:Ljava/lang/ThreadLocal;
            new java.lang.ref.SoftReference
            dup
            aload 0 /* coder */
            invokespecial java.lang.ref.SoftReference.<init>:(Ljava/lang/Object;)V
            invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
         5: .line 421
      StackMap locals: org.jruby.RubyEncoding$UTF8Coder java.lang.ref.SoftReference
      StackMap stack:
            aload 0 /* coder */
            areturn
        end local 1 // java.lang.ref.SoftReference ref
        end local 0 // org.jruby.RubyEncoding$UTF8Coder coder
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            2    3     0  coder  Lorg/jruby/RubyEncoding$UTF8Coder;
            4    6     0  coder  Lorg/jruby/RubyEncoding$UTF8Coder;
            1    6     1    ref  Ljava/lang/ref/SoftReference<Lorg/jruby/RubyEncoding$UTF8Coder;>;

  private static org.jruby.RubyEncoding$ISOCoder getISOCoder();
    descriptor: ()Lorg/jruby/RubyEncoding$ISOCoder;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=0
         0: .line 426
            getstatic org.jruby.RubyEncoding.ISO_CODER:Ljava/lang/ThreadLocal;
            invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
            checkcast java.lang.ref.SoftReference
            astore 1 /* ref */
        start local 1 // java.lang.ref.SoftReference ref
         1: .line 427
            aload 1 /* ref */
            ifnull 3
            aload 1 /* ref */
            invokevirtual java.lang.ref.SoftReference.get:()Ljava/lang/Object;
            checkcast org.jruby.RubyEncoding$ISOCoder
            dup
            astore 0 /* coder */
        start local 0 // org.jruby.RubyEncoding$ISOCoder coder
         2: ifnonnull 5
        end local 0 // org.jruby.RubyEncoding$ISOCoder coder
         3: .line 428
      StackMap locals: top java.lang.ref.SoftReference
      StackMap stack:
            new org.jruby.RubyEncoding$ISOCoder
            dup
            invokespecial org.jruby.RubyEncoding$ISOCoder.<init>:()V
            astore 0 /* coder */
        start local 0 // org.jruby.RubyEncoding$ISOCoder coder
         4: .line 429
            getstatic org.jruby.RubyEncoding.ISO_CODER:Ljava/lang/ThreadLocal;
            new java.lang.ref.SoftReference
            dup
            aload 0 /* coder */
            invokespecial java.lang.ref.SoftReference.<init>:(Ljava/lang/Object;)V
            invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
         5: .line 432
      StackMap locals: org.jruby.RubyEncoding$ISOCoder java.lang.ref.SoftReference
      StackMap stack:
            aload 0 /* coder */
            areturn
        end local 1 // java.lang.ref.SoftReference ref
        end local 0 // org.jruby.RubyEncoding$ISOCoder coder
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            2    3     0  coder  Lorg/jruby/RubyEncoding$ISOCoder;
            4    6     0  coder  Lorg/jruby/RubyEncoding$ISOCoder;
            1    6     1    ref  Ljava/lang/ref/SoftReference<Lorg/jruby/RubyEncoding$ISOCoder;>;

  public static org.jruby.runtime.builtin.IRubyObject list(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=2, locals=3, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
         0: .line 437
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 438
            aload 2 /* runtime */
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            invokevirtual org.jruby.runtime.encoding.EncodingService.getEncodingList:()[Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyArray.newArrayMayCopy:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
        end local 2 // org.jruby.Ruby runtime
        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;
            1    2     2  runtime  Lorg/jruby/Ruby;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"list"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     

  public static org.jruby.runtime.builtin.IRubyObject locale_charmap(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=3, locals=5, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
         0: .line 443
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 444
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            astore 3 /* service */
        start local 3 // org.jruby.runtime.encoding.EncodingService service
         2: .line 445
            new org.jruby.util.ByteList
            dup
            aload 3 /* service */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getLocaleEncoding:()Lorg/jcodings/Encoding;
            invokevirtual org.jcodings.Encoding.getName:()[B
            invokespecial org.jruby.util.ByteList.<init>:([B)V
            astore 4 /* name */
        start local 4 // org.jruby.util.ByteList name
         3: .line 447
            aload 2 /* runtime */
            aload 4 /* name */
            invokestatic org.jruby.RubyString.newUsAsciiStringNoCopy:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            areturn
        end local 4 // org.jruby.util.ByteList name
        end local 3 // org.jruby.runtime.encoding.EncodingService service
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0  context  Lorg/jruby/runtime/ThreadContext;
            0    4     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            1    4     2  runtime  Lorg/jruby/Ruby;
            2    4     3  service  Lorg/jruby/runtime/encoding/EncodingService;
            3    4     4     name  Lorg/jruby/util/ByteList;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"locale_charmap"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     

  public static org.jruby.runtime.builtin.IRubyObject name_list(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=6, locals=7, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
         0: .line 453
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 454
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            astore 3 /* service */
        start local 3 // org.jruby.runtime.encoding.EncodingService service
         2: .line 456
            aload 2 /* runtime */
            aload 3 /* service */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getEncodings:()Lorg/jcodings/util/CaseInsensitiveBytesHash;
            invokevirtual org.jcodings.util.CaseInsensitiveBytesHash.size:()I
            aload 3 /* service */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getAliases:()Lorg/jcodings/util/CaseInsensitiveBytesHash;
            invokevirtual org.jcodings.util.CaseInsensitiveBytesHash.size:()I
            iadd
            invokevirtual org.jruby.Ruby.newArray:(I)Lorg/jruby/RubyArray;
            astore 4 /* result */
        start local 4 // org.jruby.RubyArray result
         3: .line 458
            aload 3 /* service */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getEncodings:()Lorg/jcodings/util/CaseInsensitiveBytesHash;
            invokevirtual org.jcodings.util.CaseInsensitiveBytesHash.entryIterator:()Lorg/jcodings/util/CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntryIterator;
            astore 5 /* i */
        start local 5 // org.jcodings.util.Hash$HashEntryIterator i
         4: .line 459
            goto 8
         5: .line 461
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby org.jruby.runtime.encoding.EncodingService org.jruby.RubyArray org.jcodings.util.Hash$HashEntryIterator
      StackMap stack:
            aload 5 /* i */
            invokevirtual org.jcodings.util.Hash$HashEntryIterator.next:()Lorg/jcodings/util/Hash$HashEntry;
            checkcast org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry
         6: .line 460
            astore 6 /* e */
        start local 6 // org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry e
         7: .line 462
            aload 4 /* result */
            aload 2 /* runtime */
            aload 6 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.bytes:[B
            aload 6 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.p:I
            aload 6 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.end:I
            aload 6 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.p:I
            isub
            invokestatic org.jruby.RubyString.newUsAsciiStringShared:(Lorg/jruby/Ruby;[BII)Lorg/jruby/RubyString;
            aload 0 /* context */
            invokevirtual org.jruby.RubyString.freeze:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyArray.append:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            pop
        end local 6 // org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry e
         8: .line 459
      StackMap locals:
      StackMap stack:
            aload 5 /* i */
            invokevirtual org.jcodings.util.Hash$HashEntryIterator.hasNext:()Z
            ifne 5
         9: .line 464
            aload 3 /* service */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getAliases:()Lorg/jcodings/util/CaseInsensitiveBytesHash;
            invokevirtual org.jcodings.util.CaseInsensitiveBytesHash.entryIterator:()Lorg/jcodings/util/CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntryIterator;
            astore 5 /* i */
        10: .line 465
            goto 14
        11: .line 467
      StackMap locals:
      StackMap stack:
            aload 5 /* i */
            invokevirtual org.jcodings.util.Hash$HashEntryIterator.next:()Lorg/jcodings/util/Hash$HashEntry;
            checkcast org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry
        12: .line 466
            astore 6 /* e */
        start local 6 // org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry e
        13: .line 468
            aload 4 /* result */
            aload 2 /* runtime */
            aload 6 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.bytes:[B
            aload 6 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.p:I
            aload 6 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.end:I
            aload 6 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.p:I
            isub
            invokestatic org.jruby.RubyString.newUsAsciiStringShared:(Lorg/jruby/Ruby;[BII)Lorg/jruby/RubyString;
            aload 0 /* context */
            invokevirtual org.jruby.RubyString.freeze:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyArray.append:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            pop
        end local 6 // org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry e
        14: .line 465
      StackMap locals:
      StackMap stack:
            aload 5 /* i */
            invokevirtual org.jcodings.util.Hash$HashEntryIterator.hasNext:()Z
            ifne 11
        15: .line 471
            aload 4 /* result */
            aload 2 /* runtime */
            getstatic org.jruby.RubyEncoding.EXTERNAL:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.Ruby.newString:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyArray.append:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            pop
        16: .line 472
            aload 4 /* result */
            aload 2 /* runtime */
            getstatic org.jruby.RubyEncoding.LOCALE:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.Ruby.newString:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyArray.append:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            pop
        17: .line 474
            aload 4 /* result */
            areturn
        end local 5 // org.jcodings.util.Hash$HashEntryIterator i
        end local 4 // org.jruby.RubyArray result
        end local 3 // org.jruby.runtime.encoding.EncodingService service
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   18     0  context  Lorg/jruby/runtime/ThreadContext;
            0   18     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            1   18     2  runtime  Lorg/jruby/Ruby;
            2   18     3  service  Lorg/jruby/runtime/encoding/EncodingService;
            3   18     4   result  Lorg/jruby/RubyArray;
            4   18     5        i  Lorg/jcodings/util/Hash$HashEntryIterator;
            7    8     6        e  Lorg/jcodings/util/CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry<Lorg/jcodings/EncodingDB$Entry;>;
           13   14     6        e  Lorg/jcodings/util/CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry<Lorg/jcodings/EncodingDB$Entry;>;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"name_list"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     

  public static org.jruby.runtime.builtin.IRubyObject aliases(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=6, locals=10, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
         0: .line 480
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 481
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            astore 3 /* service */
        start local 3 // org.jruby.runtime.encoding.EncodingService service
         2: .line 483
            aload 3 /* service */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getEncodingList:()[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 4 /* list */
        start local 4 // org.jruby.runtime.builtin.IRubyObject[] list
         3: .line 484
            aload 3 /* service */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getAliases:()Lorg/jcodings/util/CaseInsensitiveBytesHash;
            invokevirtual org.jcodings.util.CaseInsensitiveBytesHash.entryIterator:()Lorg/jcodings/util/CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntryIterator;
            astore 5 /* i */
        start local 5 // org.jcodings.util.Hash$HashEntryIterator i
         4: .line 485
            aload 2 /* runtime */
            invokestatic org.jruby.RubyHash.newHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
            astore 6 /* result */
        start local 6 // org.jruby.RubyHash result
         5: .line 487
            goto 15
         6: .line 489
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby org.jruby.runtime.encoding.EncodingService org.jruby.runtime.builtin.IRubyObject[] org.jcodings.util.Hash$HashEntryIterator org.jruby.RubyHash
      StackMap stack:
            aload 5 /* i */
            invokevirtual org.jcodings.util.Hash$HashEntryIterator.next:()Lorg/jcodings/util/Hash$HashEntry;
            checkcast org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry
         7: .line 488
            astore 7 /* e */
        start local 7 // org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry e
         8: .line 490
            aload 2 /* runtime */
            aload 7 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.bytes:[B
            aload 7 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.p:I
            aload 7 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.end:I
            aload 7 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.p:I
            isub
            invokestatic org.jruby.RubyString.newUsAsciiStringShared:(Lorg/jruby/Ruby;[BII)Lorg/jruby/RubyString;
            aload 0 /* context */
            invokevirtual org.jruby.RubyString.freeze:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 8 /* alias */
        start local 8 // org.jruby.runtime.builtin.IRubyObject alias
         9: .line 491
            aload 2 /* runtime */
        10: .line 492
            aload 4 /* list */
            aload 7 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.value:Ljava/lang/Object;
            checkcast org.jcodings.EncodingDB$Entry
            invokevirtual org.jcodings.EncodingDB$Entry.getIndex:()I
            aaload
            checkcast org.jruby.RubyEncoding
            getfield org.jruby.RubyEncoding.name:Lorg/jruby/util/ByteList;
        11: .line 491
            invokestatic org.jruby.RubyString.newUsAsciiStringShared:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
        12: .line 492
            aload 0 /* context */
            invokevirtual org.jruby.RubyString.freeze:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
        13: .line 491
            astore 9 /* name */
        start local 9 // org.jruby.runtime.builtin.IRubyObject name
        14: .line 493
            aload 6 /* result */
            aload 8 /* alias */
            aload 9 /* name */
            invokevirtual org.jruby.RubyHash.fastASet:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
        end local 9 // org.jruby.runtime.builtin.IRubyObject name
        end local 8 // org.jruby.runtime.builtin.IRubyObject alias
        end local 7 // org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry e
        15: .line 487
      StackMap locals:
      StackMap stack:
            aload 5 /* i */
            invokevirtual org.jcodings.util.Hash$HashEntryIterator.hasNext:()Z
            ifne 6
        16: .line 496
            aload 6 /* result */
            aload 2 /* runtime */
            getstatic org.jruby.RubyEncoding.EXTERNAL:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.Ruby.newString:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
        17: .line 497
            aload 2 /* runtime */
            new org.jruby.util.ByteList
            dup
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getDefaultExternalEncoding:()Lorg/jcodings/Encoding;
            invokevirtual org.jcodings.Encoding.getName:()[B
            invokespecial org.jruby.util.ByteList.<init>:([B)V
            invokevirtual org.jruby.Ruby.newString:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
        18: .line 496
            invokevirtual org.jruby.RubyHash.fastASet:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
        19: .line 498
            aload 6 /* result */
            aload 2 /* runtime */
            getstatic org.jruby.RubyEncoding.LOCALE:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.Ruby.newString:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
        20: .line 499
            aload 2 /* runtime */
            new org.jruby.util.ByteList
            dup
            aload 3 /* service */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getLocaleEncoding:()Lorg/jcodings/Encoding;
            invokevirtual org.jcodings.Encoding.getName:()[B
            invokespecial org.jruby.util.ByteList.<init>:([B)V
            invokevirtual org.jruby.Ruby.newString:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
        21: .line 498
            invokevirtual org.jruby.RubyHash.fastASet:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
        22: .line 501
            aload 6 /* result */
            areturn
        end local 6 // org.jruby.RubyHash result
        end local 5 // org.jcodings.util.Hash$HashEntryIterator i
        end local 4 // org.jruby.runtime.builtin.IRubyObject[] list
        end local 3 // org.jruby.runtime.encoding.EncodingService service
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   23     0  context  Lorg/jruby/runtime/ThreadContext;
            0   23     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            1   23     2  runtime  Lorg/jruby/Ruby;
            2   23     3  service  Lorg/jruby/runtime/encoding/EncodingService;
            3   23     4     list  [Lorg/jruby/runtime/builtin/IRubyObject;
            4   23     5        i  Lorg/jcodings/util/Hash$HashEntryIterator;
            5   23     6   result  Lorg/jruby/RubyHash;
            8   15     7        e  Lorg/jcodings/util/CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry<Lorg/jcodings/EncodingDB$Entry;>;
            9   15     8    alias  Lorg/jruby/runtime/builtin/IRubyObject;
           14   15     9     name  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"aliases"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     

  public static org.jruby.runtime.builtin.IRubyObject find(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=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 str
         0: .line 506
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 509
            aload 2 /* str */
            instanceof org.jruby.RubyEncoding
            ifeq 2
            aload 2 /* str */
            areturn
         2: .line 511
      StackMap locals: org.jruby.Ruby
      StackMap stack:
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            aload 2 /* str */
            invokevirtual org.jruby.runtime.encoding.EncodingService.rubyEncodingFromObject:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject str
        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      str  Lorg/jruby/runtime/builtin/IRubyObject;
            1    3     3  runtime  Lorg/jruby/Ruby;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"find"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      str      

  public org.jruby.runtime.builtin.IRubyObject replicate(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.jruby.RubyEncoding this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 516
            new org.jruby.RubyEncoding
            dup
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* arg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.getBytes:()[B
            aload 0 /* this */
            invokevirtual org.jruby.RubyEncoding.getEncoding:()Lorg/jcodings/Encoding;
            aload 0 /* this */
            getfield org.jruby.RubyEncoding.isDummy:Z
            invokespecial org.jruby.RubyEncoding.<init>:(Lorg/jruby/Ruby;[BLorg/jcodings/Encoding;Z)V
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyEncoding this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyEncoding;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"replicate"})
    MethodParameters:
         Name  Flags
      context  
      arg      

  public org.jruby.runtime.builtin.IRubyObject _dump(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.jruby.RubyEncoding this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 521
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyEncoding.to_s:(Lorg/jruby/runtime/ThreadContext;)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.RubyEncoding this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyEncoding;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"_dump"})
    MethodParameters:
         Name  Flags
      context  
      arg      

  public static org.jruby.runtime.builtin.IRubyObject _load(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 str
         0: .line 526
            aload 0 /* context */
            aload 1 /* recv */
            aload 2 /* str */
            invokestatic org.jruby.RubyEncoding.find:(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 str
        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      str  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"_load"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      str      

  public org.jruby.runtime.builtin.IRubyObject asciiCompatible_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.RubyEncoding this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 531
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.RubyEncoding.getEncoding:()Lorg/jcodings/Encoding;
            invokevirtual org.jcodings.Encoding.isAsciiCompatible:()Z
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyEncoding this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyEncoding;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"ascii_compatible?"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject to_s(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyEncoding this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 537
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.RubyEncoding.name:Lorg/jruby/util/ByteList;
            invokestatic org.jruby.RubyString.newUsAsciiStringShared:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyEncoding this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyEncoding;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"to_s", "name"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject inspect(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.RubyEncoding this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 542
            new org.jruby.util.ByteList
            dup
            invokespecial org.jruby.util.ByteList.<init>:()V
            astore 2 /* bytes */
        start local 2 // org.jruby.util.ByteList bytes
         1: .line 543
            aload 2 /* bytes */
            ldc "#<Encoding:"
            invokevirtual java.lang.String.getBytes:()[B
            invokevirtual org.jruby.util.ByteList.append:([B)V
         2: .line 544
            aload 2 /* bytes */
            aload 0 /* this */
            getfield org.jruby.RubyEncoding.name:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.util.ByteList.append:(Lorg/jruby/util/ByteList;)V
         3: .line 545
            aload 0 /* this */
            getfield org.jruby.RubyEncoding.isDummy:Z
            ifeq 4
            aload 2 /* bytes */
            ldc " (dummy)"
            invokevirtual java.lang.String.getBytes:()[B
            invokevirtual org.jruby.util.ByteList.append:([B)V
         4: .line 546
      StackMap locals: org.jruby.util.ByteList
      StackMap stack:
            aload 2 /* bytes */
            bipush 62
            invokevirtual org.jruby.util.ByteList.append:(I)Lorg/jruby/util/ByteList;
            pop
         5: .line 547
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* bytes */
            invokestatic org.jruby.RubyString.newUsAsciiStringNoCopy:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            areturn
        end local 2 // org.jruby.util.ByteList bytes
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyEncoding this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/jruby/RubyEncoding;
            0    6     1  context  Lorg/jruby/runtime/ThreadContext;
            1    6     2    bytes  Lorg/jruby/util/ByteList;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"inspect"})
    MethodParameters:
         Name  Flags
      context  

  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=6, locals=8, args_size=2
        start local 0 // org.jruby.RubyEncoding this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 553
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 554
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            astore 3 /* service */
        start local 3 // org.jruby.runtime.encoding.EncodingService service
         2: .line 555
            aload 3 /* service */
            aload 0 /* this */
            getfield org.jruby.RubyEncoding.name:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.runtime.encoding.EncodingService.findEncodingOrAliasEntry:(Lorg/jruby/util/ByteList;)Lorg/jcodings/EncodingDB$Entry;
            astore 4 /* entry */
        start local 4 // org.jcodings.EncodingDB$Entry entry
         3: .line 557
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.newArray:()Lorg/jruby/RubyArray;
            astore 5 /* result */
        start local 5 // org.jruby.RubyArray result
         4: .line 559
            aload 3 /* service */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getEncodings:()Lorg/jcodings/util/CaseInsensitiveBytesHash;
            invokevirtual org.jcodings.util.CaseInsensitiveBytesHash.entryIterator:()Lorg/jcodings/util/CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntryIterator;
            astore 6 /* i */
        start local 6 // org.jcodings.util.Hash$HashEntryIterator i
         5: .line 560
            goto 10
         6: .line 562
      StackMap locals: org.jruby.RubyEncoding org.jruby.runtime.ThreadContext org.jruby.Ruby org.jruby.runtime.encoding.EncodingService org.jcodings.EncodingDB$Entry org.jruby.RubyArray org.jcodings.util.Hash$HashEntryIterator
      StackMap stack:
            aload 6 /* i */
            invokevirtual org.jcodings.util.Hash$HashEntryIterator.next:()Lorg/jcodings/util/Hash$HashEntry;
            checkcast org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry
         7: .line 561
            astore 7 /* e */
        start local 7 // org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry e
         8: .line 563
            aload 7 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.value:Ljava/lang/Object;
            aload 4 /* entry */
            if_acmpne 10
         9: .line 564
            aload 5 /* result */
            aload 2 /* runtime */
            aload 7 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.bytes:[B
            aload 7 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.p:I
            aload 7 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.end:I
            aload 7 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.p:I
            isub
            invokestatic org.jruby.RubyString.newUsAsciiStringShared:(Lorg/jruby/Ruby;[BII)Lorg/jruby/RubyString;
            aload 1 /* context */
            invokevirtual org.jruby.RubyString.freeze:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyArray.append:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            pop
        end local 7 // org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry e
        10: .line 560
      StackMap locals:
      StackMap stack:
            aload 6 /* i */
            invokevirtual org.jcodings.util.Hash$HashEntryIterator.hasNext:()Z
            ifne 6
        11: .line 567
            aload 3 /* service */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getAliases:()Lorg/jcodings/util/CaseInsensitiveBytesHash;
            invokevirtual org.jcodings.util.CaseInsensitiveBytesHash.entryIterator:()Lorg/jcodings/util/CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntryIterator;
            astore 6 /* i */
        12: .line 568
            goto 17
        13: .line 570
      StackMap locals:
      StackMap stack:
            aload 6 /* i */
            invokevirtual org.jcodings.util.Hash$HashEntryIterator.next:()Lorg/jcodings/util/Hash$HashEntry;
            checkcast org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry
        14: .line 569
            astore 7 /* e */
        start local 7 // org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry e
        15: .line 571
            aload 7 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.value:Ljava/lang/Object;
            aload 4 /* entry */
            if_acmpne 17
        16: .line 572
            aload 5 /* result */
            aload 2 /* runtime */
            aload 7 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.bytes:[B
            aload 7 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.p:I
            aload 7 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.end:I
            aload 7 /* e */
            getfield org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry.p:I
            isub
            invokestatic org.jruby.RubyString.newUsAsciiStringShared:(Lorg/jruby/Ruby;[BII)Lorg/jruby/RubyString;
            aload 1 /* context */
            invokevirtual org.jruby.RubyString.freeze:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyArray.append:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            pop
        end local 7 // org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry e
        17: .line 568
      StackMap locals:
      StackMap stack:
            aload 6 /* i */
            invokevirtual org.jcodings.util.Hash$HashEntryIterator.hasNext:()Z
            ifne 13
        18: .line 575
            aload 5 /* result */
            aload 2 /* runtime */
            getstatic org.jruby.RubyEncoding.EXTERNAL:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.Ruby.newString:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyArray.append:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            pop
        19: .line 576
            aload 5 /* result */
            aload 2 /* runtime */
            getstatic org.jruby.RubyEncoding.LOCALE:Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.Ruby.newString:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyArray.append:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            pop
        20: .line 578
            aload 5 /* result */
            areturn
        end local 6 // org.jcodings.util.Hash$HashEntryIterator i
        end local 5 // org.jruby.RubyArray result
        end local 4 // org.jcodings.EncodingDB$Entry entry
        end local 3 // org.jruby.runtime.encoding.EncodingService service
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyEncoding this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   21     0     this  Lorg/jruby/RubyEncoding;
            0   21     1  context  Lorg/jruby/runtime/ThreadContext;
            1   21     2  runtime  Lorg/jruby/Ruby;
            2   21     3  service  Lorg/jruby/runtime/encoding/EncodingService;
            3   21     4    entry  Lorg/jcodings/EncodingDB$Entry;
            4   21     5   result  Lorg/jruby/RubyArray;
            5   21     6        i  Lorg/jcodings/util/Hash$HashEntryIterator;
            8   10     7        e  Lorg/jcodings/util/CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry<Lorg/jcodings/EncodingDB$Entry;>;
           15   17     7        e  Lorg/jcodings/util/CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry<Lorg/jcodings/EncodingDB$Entry;>;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"names"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject dummy_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.RubyEncoding this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 583
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.RubyEncoding.isDummy:Z
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyEncoding this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyEncoding;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"dummy?"})
    MethodParameters:
         Name  Flags
      context  

  public static org.jruby.runtime.builtin.IRubyObject compatible_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, 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;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
        start local 2 // org.jruby.runtime.builtin.IRubyObject first
        start local 3 // org.jruby.runtime.builtin.IRubyObject second
         0: .line 588
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         1: .line 589
            aload 2 /* first */
            aload 3 /* second */
            invokestatic org.jruby.RubyEncoding.areCompatible:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jcodings/Encoding;
            astore 5 /* enc */
        start local 5 // org.jcodings.Encoding enc
         2: .line 591
            aload 5 /* enc */
            ifnonnull 3
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            goto 4
      StackMap locals: org.jruby.Ruby org.jcodings.Encoding
      StackMap stack:
         3: aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            aload 5 /* enc */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getEncoding:(Lorg/jcodings/Encoding;)Lorg/jruby/RubyEncoding;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         4: areturn
        end local 5 // org.jcodings.Encoding enc
        end local 4 // org.jruby.Ruby runtime
        end local 3 // org.jruby.runtime.builtin.IRubyObject second
        end local 2 // org.jruby.runtime.builtin.IRubyObject first
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        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     self  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     2    first  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3   second  Lorg/jruby/runtime/builtin/IRubyObject;
            1    5     4  runtime  Lorg/jruby/Ruby;
            2    5     5      enc  Lorg/jcodings/Encoding;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"compatible?"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      self     
      first    
      second   

  public static org.jruby.runtime.builtin.IRubyObject getDefaultExternal(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 596
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            invokevirtual org.jruby.runtime.encoding.EncodingService.getDefaultExternal:()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 = {"default_external"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     

  public static org.jruby.runtime.builtin.IRubyObject setDefaultExternal(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=2, 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 encoding
         0: .line 601
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.isVerbose:()Z
            ifeq 1
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            ldc "setting Encoding.default_external"
            invokevirtual org.jruby.common.RubyWarnings.warning:(Ljava/lang/String;)V
         1: .line 602
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 2 /* encoding */
            invokestatic org.jruby.util.io.EncodingUtils.rbEncSetDefaultExternal:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)V
         2: .line 603
            aload 2 /* encoding */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject encoding
        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  encoding  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"default_external="}, meta = true)
    MethodParameters:
          Name  Flags
      context   
      recv      
      encoding  

  public static org.jruby.runtime.builtin.IRubyObject getDefaultInternal(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 608
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            invokevirtual org.jruby.runtime.encoding.EncodingService.getDefaultInternal:()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 = {"default_internal"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     

  public static org.jruby.runtime.builtin.IRubyObject getDefaultInternal(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 recv
         0: .line 613
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 0 /* recv */
            invokestatic org.jruby.RubyEncoding.getDefaultInternal:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  recv  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      recv  

  public static org.jruby.runtime.builtin.IRubyObject setDefaultInternal(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=2, 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 encoding
         0: .line 618
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.isVerbose:()Z
            ifeq 1
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            ldc "setting Encoding.default_internal"
            invokevirtual org.jruby.common.RubyWarnings.warning:(Ljava/lang/String;)V
         1: .line 619
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 2 /* encoding */
            invokestatic org.jruby.util.io.EncodingUtils.rbEncSetDefaultInternal:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)V
         2: .line 620
            aload 2 /* encoding */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject encoding
        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  encoding  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"default_internal="}, required = 1, meta = true)
    MethodParameters:
          Name  Flags
      context   
      recv      
      encoding  
}
SourceFile: "RubyEncoding.java"
NestMembers:
  org.jruby.RubyEncoding$ISOCoder  org.jruby.RubyEncoding$UTF8Coder
InnerClasses:
  public final Entry = org.jcodings.EncodingDB$Entry of org.jcodings.EncodingDB
  public final CaseInsensitiveBytesHashEntry = org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntry of org.jcodings.util.CaseInsensitiveBytesHash
  public CaseInsensitiveBytesHashEntryIterator = org.jcodings.util.CaseInsensitiveBytesHash$CaseInsensitiveBytesHashEntryIterator of org.jcodings.util.CaseInsensitiveBytesHash
  public HashEntry = org.jcodings.util.Hash$HashEntry of org.jcodings.util.Hash
  public HashEntryIterator = org.jcodings.util.Hash$HashEntryIterator of org.jcodings.util.Hash
  private ISOCoder = org.jruby.RubyEncoding$ISOCoder of org.jruby.RubyEncoding
  private UTF8Coder = org.jruby.RubyEncoding$UTF8Coder of org.jruby.RubyEncoding
  public final JavaClassKindOf = org.jruby.RubyModule$JavaClassKindOf of org.jruby.RubyModule
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyClass(name = {"Encoding"})