public class org.jruby.javasupport.JavaUtil
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.javasupport.JavaUtil
  super_class: java.lang.Object
{
  private static final java.util.regex.Pattern RUBY_CASE_SPLITTER;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_DEFAULT_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_BOOLEAN_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_FLOAT_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_DOUBLE_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_CHAR_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_BYTE_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_SHORT_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_INT_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_LONG_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_BOOLEANPRIM_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_FLOATPRIM_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_DOUBLEPRIM_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_CHARPRIM_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_BYTEPRIM_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_SHORTPRIM_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_INTPRIM_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_LONGPRIM_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$StringConverter JAVA_STRING_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$StringConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_CHARSEQUENCE_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter BYTELIST_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.javasupport.JavaUtil$JavaConverter JAVA_BIGINTEGER_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private static final java.util.Map<java.lang.Class, org.jruby.javasupport.JavaUtil$JavaConverter> JAVA_CONVERTERS;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Class;Lorg/jruby/javasupport/JavaUtil$JavaConverter;>;

  private static final org.jruby.javasupport.JavaUtil$NumericConverter<java.lang.Byte> NUMERIC_TO_BYTE;
    descriptor: Lorg/jruby/javasupport/JavaUtil$NumericConverter;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/javasupport/JavaUtil$NumericConverter<Ljava/lang/Byte;>;

  private static final org.jruby.javasupport.JavaUtil$NumericConverter<java.lang.Short> NUMERIC_TO_SHORT;
    descriptor: Lorg/jruby/javasupport/JavaUtil$NumericConverter;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/javasupport/JavaUtil$NumericConverter<Ljava/lang/Short;>;

  private static final org.jruby.javasupport.JavaUtil$NumericConverter<java.lang.Character> NUMERIC_TO_CHARACTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$NumericConverter;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/javasupport/JavaUtil$NumericConverter<Ljava/lang/Character;>;

  private static final org.jruby.javasupport.JavaUtil$NumericConverter<java.lang.Integer> NUMERIC_TO_INTEGER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$NumericConverter;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/javasupport/JavaUtil$NumericConverter<Ljava/lang/Integer;>;

  private static final org.jruby.javasupport.JavaUtil$NumericConverter<java.lang.Long> NUMERIC_TO_LONG;
    descriptor: Lorg/jruby/javasupport/JavaUtil$NumericConverter;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/javasupport/JavaUtil$NumericConverter<Ljava/lang/Long;>;

  private static final org.jruby.javasupport.JavaUtil$NumericConverter<java.lang.Float> NUMERIC_TO_FLOAT;
    descriptor: Lorg/jruby/javasupport/JavaUtil$NumericConverter;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/javasupport/JavaUtil$NumericConverter<Ljava/lang/Float;>;

  private static final org.jruby.javasupport.JavaUtil$NumericConverter<java.lang.Double> NUMERIC_TO_DOUBLE;
    descriptor: Lorg/jruby/javasupport/JavaUtil$NumericConverter;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/javasupport/JavaUtil$NumericConverter<Ljava/lang/Double;>;

  private static final org.jruby.javasupport.JavaUtil$NumericConverter<java.math.BigInteger> NUMERIC_TO_BIGINTEGER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$NumericConverter;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/javasupport/JavaUtil$NumericConverter<Ljava/math/BigInteger;>;

  private static final org.jruby.javasupport.JavaUtil$NumericConverter NUMERIC_TO_OTHER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$NumericConverter;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.jruby.javasupport.JavaUtil$NumericConverter<java.lang.Object> NUMERIC_TO_OBJECT;
    descriptor: Lorg/jruby/javasupport/JavaUtil$NumericConverter;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/javasupport/JavaUtil$NumericConverter<Ljava/lang/Object;>;

  private static final org.jruby.javasupport.JavaUtil$NumericConverter NUMERIC_TO_VOID;
    descriptor: Lorg/jruby/javasupport/JavaUtil$NumericConverter;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.Map<java.lang.Class, org.jruby.javasupport.JavaUtil$NumericConverter> NUMERIC_CONVERTERS;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Class;Lorg/jruby/javasupport/JavaUtil$NumericConverter;>;

  public static final java.util.Map<java.lang.String, java.lang.Class> PRIMITIVE_CLASSES;
    descriptor: Ljava/util/Map;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Class;>;

  public static final org.jruby.javasupport.JavaUtil$RubyConverter RUBY_BOOLEAN_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter RUBY_BYTE_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter RUBY_SHORT_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter RUBY_CHAR_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter RUBY_INTEGER_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter RUBY_LONG_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter RUBY_FLOAT_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter RUBY_DOUBLE_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final java.util.Map<java.lang.Class, org.jruby.javasupport.JavaUtil$RubyConverter> RUBY_CONVERTERS;
    descriptor: Ljava/util/Map;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Class;Lorg/jruby/javasupport/JavaUtil$RubyConverter;>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter ARRAY_BOOLEAN_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter ARRAY_BYTE_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter ARRAY_SHORT_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter ARRAY_CHAR_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter ARRAY_INT_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter ARRAY_LONG_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter ARRAY_FLOAT_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter ARRAY_DOUBLE_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter ARRAY_OBJECT_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter ARRAY_CLASS_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter ARRAY_STRING_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter ARRAY_BIGINTEGER_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final org.jruby.javasupport.JavaUtil$RubyConverter ARRAY_BIGDECIMAL_CONVERTER;
    descriptor: Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final java.util.Map<java.lang.Class, org.jruby.javasupport.JavaUtil$RubyConverter> ARRAY_CONVERTERS;
    descriptor: Ljava/util/Map;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Class;Lorg/jruby/javasupport/JavaUtil$RubyConverter;>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final boolean CAN_SET_ACCESSIBLE;
    descriptor: Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  private static volatile int[] $SWITCH_TABLE$org$jruby$runtime$ClassIndex;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=0
         0: .line 449
            ldc "([a-z][0-9]*)_([a-z])"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic org.jruby.javasupport.JavaUtil.RUBY_CASE_SPLITTER:Ljava/util/regex/Pattern;
         1: .line 612
            new org.jruby.javasupport.JavaUtil$1
            dup
            ldc Ljava/lang/Object;
            invokespecial org.jruby.javasupport.JavaUtil$1.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_DEFAULT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
         2: .line 625
            new org.jruby.javasupport.JavaUtil$2
            dup
            ldc Ljava/lang/Boolean;
            invokespecial org.jruby.javasupport.JavaUtil$2.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_BOOLEAN_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
         3: .line 638
            new org.jruby.javasupport.JavaUtil$3
            dup
            ldc Ljava/lang/Float;
            invokespecial org.jruby.javasupport.JavaUtil$3.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_FLOAT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
         4: .line 651
            new org.jruby.javasupport.JavaUtil$4
            dup
            ldc Ljava/lang/Double;
            invokespecial org.jruby.javasupport.JavaUtil$4.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_DOUBLE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
         5: .line 664
            new org.jruby.javasupport.JavaUtil$5
            dup
            ldc Ljava/lang/Character;
            invokespecial org.jruby.javasupport.JavaUtil$5.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_CHAR_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
         6: .line 677
            new org.jruby.javasupport.JavaUtil$6
            dup
            ldc Ljava/lang/Byte;
            invokespecial org.jruby.javasupport.JavaUtil$6.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_BYTE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
         7: .line 690
            new org.jruby.javasupport.JavaUtil$7
            dup
            ldc Ljava/lang/Short;
            invokespecial org.jruby.javasupport.JavaUtil$7.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_SHORT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
         8: .line 703
            new org.jruby.javasupport.JavaUtil$8
            dup
            ldc Ljava/lang/Integer;
            invokespecial org.jruby.javasupport.JavaUtil$8.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_INT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
         9: .line 716
            new org.jruby.javasupport.JavaUtil$9
            dup
            ldc Ljava/lang/Long;
            invokespecial org.jruby.javasupport.JavaUtil$9.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_LONG_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
        10: .line 729
            new org.jruby.javasupport.JavaUtil$10
            dup
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            invokespecial org.jruby.javasupport.JavaUtil$10.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_BOOLEANPRIM_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
        11: .line 742
            new org.jruby.javasupport.JavaUtil$11
            dup
            getstatic java.lang.Float.TYPE:Ljava/lang/Class;
            invokespecial org.jruby.javasupport.JavaUtil$11.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_FLOATPRIM_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
        12: .line 755
            new org.jruby.javasupport.JavaUtil$12
            dup
            getstatic java.lang.Double.TYPE:Ljava/lang/Class;
            invokespecial org.jruby.javasupport.JavaUtil$12.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_DOUBLEPRIM_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
        13: .line 768
            new org.jruby.javasupport.JavaUtil$13
            dup
            getstatic java.lang.Character.TYPE:Ljava/lang/Class;
            invokespecial org.jruby.javasupport.JavaUtil$13.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_CHARPRIM_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
        14: .line 781
            new org.jruby.javasupport.JavaUtil$14
            dup
            getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
            invokespecial org.jruby.javasupport.JavaUtil$14.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_BYTEPRIM_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
        15: .line 794
            new org.jruby.javasupport.JavaUtil$15
            dup
            getstatic java.lang.Short.TYPE:Ljava/lang/Class;
            invokespecial org.jruby.javasupport.JavaUtil$15.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_SHORTPRIM_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
        16: .line 807
            new org.jruby.javasupport.JavaUtil$16
            dup
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            invokespecial org.jruby.javasupport.JavaUtil$16.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_INTPRIM_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
        17: .line 820
            new org.jruby.javasupport.JavaUtil$17
            dup
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            invokespecial org.jruby.javasupport.JavaUtil$17.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_LONGPRIM_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
        18: .line 864
            new org.jruby.javasupport.JavaUtil$StringConverter
            dup
            invokespecial org.jruby.javasupport.JavaUtil$StringConverter.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_STRING_CONVERTER:Lorg/jruby/javasupport/JavaUtil$StringConverter;
        19: .line 866
            new org.jruby.javasupport.JavaUtil$18
            dup
            ldc Ljava/lang/CharSequence;
            invokespecial org.jruby.javasupport.JavaUtil$18.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_CHARSEQUENCE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
        20: .line 879
            new org.jruby.javasupport.JavaUtil$19
            dup
            ldc Lorg/jruby/util/ByteList;
            invokespecial org.jruby.javasupport.JavaUtil$19.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.BYTELIST_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
        21: .line 892
            new org.jruby.javasupport.JavaUtil$20
            dup
            ldc Ljava/math/BigInteger;
            invokespecial org.jruby.javasupport.JavaUtil$20.<init>:(Ljava/lang/Class;)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_BIGINTEGER_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
        22: .line 905
            new java.util.IdentityHashMap
            dup
            bipush 24
            invokespecial java.util.IdentityHashMap.<init>:(I)V
            putstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
        23: .line 908
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Byte;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_BYTE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        24: .line 909
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_BYTEPRIM_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        25: .line 910
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Short;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_SHORT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        26: .line 911
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Short.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_SHORTPRIM_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        27: .line 912
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Character;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CHAR_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        28: .line 913
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Character.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CHARPRIM_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        29: .line 914
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Integer;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_INT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        30: .line 915
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_INTPRIM_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        31: .line 916
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Long;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_LONG_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        32: .line 917
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_LONGPRIM_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        33: .line 918
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Float;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_FLOAT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        34: .line 919
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Float.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_FLOATPRIM_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        35: .line 920
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Double;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_DOUBLE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        36: .line 921
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Double.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_DOUBLEPRIM_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        37: .line 922
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Boolean;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_BOOLEAN_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        38: .line 923
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_BOOLEANPRIM_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        39: .line 925
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/String;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_STRING_CONVERTER:Lorg/jruby/javasupport/JavaUtil$StringConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        40: .line 926
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/CharSequence;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CHARSEQUENCE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        41: .line 928
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            ldc Lorg/jruby/util/ByteList;
            getstatic org.jruby.javasupport.JavaUtil.BYTELIST_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        42: .line 930
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            ldc Ljava/math/BigInteger;
            getstatic org.jruby.javasupport.JavaUtil.JAVA_BIGINTEGER_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        43: .line 933
            invokedynamic coerce()Lorg/jruby/javasupport/JavaUtil$NumericConverter;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
                  org/jruby/javasupport/JavaUtil.lambda$0(Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Byte; (6)
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Byte;
            putstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_BYTE:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
        44: .line 938
            invokedynamic coerce()Lorg/jruby/javasupport/JavaUtil$NumericConverter;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
                  org/jruby/javasupport/JavaUtil.lambda$1(Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Short; (6)
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Short;
            putstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_SHORT:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
        45: .line 943
            invokedynamic coerce()Lorg/jruby/javasupport/JavaUtil$NumericConverter;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
                  org/jruby/javasupport/JavaUtil.lambda$2(Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Character; (6)
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Character;
            putstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_CHARACTER:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
        46: .line 948
            invokedynamic coerce()Lorg/jruby/javasupport/JavaUtil$NumericConverter;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
                  org/jruby/javasupport/JavaUtil.lambda$3(Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Integer; (6)
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Integer;
            putstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_INTEGER:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
        47: .line 953
            invokedynamic coerce()Lorg/jruby/javasupport/JavaUtil$NumericConverter;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
                  org/jruby/javasupport/JavaUtil.lambda$4(Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Long; (6)
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Long;
            putstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_LONG:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
        48: .line 954
            invokedynamic coerce()Lorg/jruby/javasupport/JavaUtil$NumericConverter;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
                  org/jruby/javasupport/JavaUtil.lambda$5(Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Float; (6)
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Float;
            putstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_FLOAT:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
        49: .line 960
            invokedynamic coerce()Lorg/jruby/javasupport/JavaUtil$NumericConverter;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
                  org/jruby/javasupport/JavaUtil.lambda$6(Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Double; (6)
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Double;
            putstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_DOUBLE:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
        50: .line 961
            invokedynamic coerce()Lorg/jruby/javasupport/JavaUtil$NumericConverter;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
                  org/jruby/javasupport/JavaUtil.lambda$7(Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/math/BigInteger; (6)
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/math/BigInteger;
            putstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_BIGINTEGER:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
        51: .line 963
            invokedynamic coerce()Lorg/jruby/javasupport/JavaUtil$NumericConverter;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
                  org/jruby/javasupport/JavaUtil.lambda$8(Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object; (6)
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
            putstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_OTHER:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
        52: .line 971
            invokedynamic coerce()Lorg/jruby/javasupport/JavaUtil$NumericConverter;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
                  org/jruby/javasupport/JavaUtil.lambda$9(Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object; (6)
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
            putstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_OBJECT:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
        53: .line 987
            invokedynamic coerce()Lorg/jruby/javasupport/JavaUtil$NumericConverter;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
                  org/jruby/javasupport/JavaUtil.lambda$10(Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object; (6)
                  (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
            putstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_VOID:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
        54: .line 1004
            new java.util.IdentityHashMap
            dup
            bipush 24
            invokespecial java.util.IdentityHashMap.<init>:(I)V
            putstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
        55: .line 1007
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_BYTE:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        56: .line 1008
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Byte;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_BYTE:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        57: .line 1009
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Short.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_SHORT:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        58: .line 1010
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Short;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_SHORT:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        59: .line 1011
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Character.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_CHARACTER:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        60: .line 1012
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Character;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_CHARACTER:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        61: .line 1013
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_INTEGER:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        62: .line 1014
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Integer;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_INTEGER:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        63: .line 1015
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_LONG:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        64: .line 1016
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Long;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_LONG:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        65: .line 1017
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Float.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_FLOAT:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        66: .line 1018
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Float;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_FLOAT:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        67: .line 1019
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Double.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_DOUBLE:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        68: .line 1020
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Double;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_DOUBLE:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        69: .line 1021
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            ldc Ljava/math/BigInteger;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_BIGINTEGER:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        70: .line 1022
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Object;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_OBJECT:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        71: .line 1023
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Number;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_OBJECT:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        72: .line 1024
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            ldc Ljava/io/Serializable;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_OBJECT:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        73: .line 1025
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_VOID:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        74: .line 1034
            new java.util.HashMap
            dup
            bipush 10
            fconst_1
            invokespecial java.util.HashMap.<init>:(IF)V
            astore 0 /* primitiveClasses */
        start local 0 // java.util.Map primitiveClasses
        75: .line 1035
            aload 0 /* primitiveClasses */
            ldc "boolean"
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        76: .line 1036
            aload 0 /* primitiveClasses */
            ldc "byte"
            getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        77: .line 1037
            aload 0 /* primitiveClasses */
            ldc "char"
            getstatic java.lang.Character.TYPE:Ljava/lang/Class;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        78: .line 1038
            aload 0 /* primitiveClasses */
            ldc "short"
            getstatic java.lang.Short.TYPE:Ljava/lang/Class;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        79: .line 1039
            aload 0 /* primitiveClasses */
            ldc "int"
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        80: .line 1040
            aload 0 /* primitiveClasses */
            ldc "long"
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        81: .line 1041
            aload 0 /* primitiveClasses */
            ldc "float"
            getstatic java.lang.Float.TYPE:Ljava/lang/Class;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        82: .line 1042
            aload 0 /* primitiveClasses */
            ldc "double"
            getstatic java.lang.Double.TYPE:Ljava/lang/Class;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        83: .line 1043
            aload 0 /* primitiveClasses */
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
            putstatic org.jruby.javasupport.JavaUtil.PRIMITIVE_CLASSES:Ljava/util/Map;
        end local 0 // java.util.Map primitiveClasses
        84: .line 1209
            new org.jruby.javasupport.JavaUtil$21
            dup
            invokespecial org.jruby.javasupport.JavaUtil$21.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.RUBY_BOOLEAN_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
        85: .line 1216
            new org.jruby.javasupport.JavaUtil$22
            dup
            invokespecial org.jruby.javasupport.JavaUtil$22.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.RUBY_BYTE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
        86: .line 1226
            new org.jruby.javasupport.JavaUtil$23
            dup
            invokespecial org.jruby.javasupport.JavaUtil$23.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.RUBY_SHORT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
        87: .line 1236
            new org.jruby.javasupport.JavaUtil$24
            dup
            invokespecial org.jruby.javasupport.JavaUtil$24.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.RUBY_CHAR_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
        88: .line 1246
            new org.jruby.javasupport.JavaUtil$25
            dup
            invokespecial org.jruby.javasupport.JavaUtil$25.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.RUBY_INTEGER_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
        89: .line 1256
            new org.jruby.javasupport.JavaUtil$26
            dup
            invokespecial org.jruby.javasupport.JavaUtil$26.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.RUBY_LONG_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
        90: .line 1266
            new org.jruby.javasupport.JavaUtil$27
            dup
            invokespecial org.jruby.javasupport.JavaUtil$27.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.RUBY_FLOAT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
        91: .line 1276
            new org.jruby.javasupport.JavaUtil$28
            dup
            invokespecial org.jruby.javasupport.JavaUtil$28.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.RUBY_DOUBLE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
        92: .line 1286
            new java.util.HashMap
            dup
            bipush 16
            fconst_1
            invokespecial java.util.HashMap.<init>:(IF)V
            putstatic org.jruby.javasupport.JavaUtil.RUBY_CONVERTERS:Ljava/util/Map;
        93: .line 1288
            getstatic org.jruby.javasupport.JavaUtil.RUBY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Boolean;
            getstatic org.jruby.javasupport.JavaUtil.RUBY_BOOLEAN_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        94: .line 1289
            getstatic org.jruby.javasupport.JavaUtil.RUBY_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.RUBY_BOOLEAN_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        95: .line 1290
            getstatic org.jruby.javasupport.JavaUtil.RUBY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Byte;
            getstatic org.jruby.javasupport.JavaUtil.RUBY_BYTE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        96: .line 1291
            getstatic org.jruby.javasupport.JavaUtil.RUBY_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.RUBY_BYTE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        97: .line 1292
            getstatic org.jruby.javasupport.JavaUtil.RUBY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Short;
            getstatic org.jruby.javasupport.JavaUtil.RUBY_SHORT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        98: .line 1293
            getstatic org.jruby.javasupport.JavaUtil.RUBY_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Short.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.RUBY_SHORT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        99: .line 1294
            getstatic org.jruby.javasupport.JavaUtil.RUBY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Integer;
            getstatic org.jruby.javasupport.JavaUtil.RUBY_INTEGER_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       100: .line 1295
            getstatic org.jruby.javasupport.JavaUtil.RUBY_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.RUBY_INTEGER_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       101: .line 1296
            getstatic org.jruby.javasupport.JavaUtil.RUBY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Long;
            getstatic org.jruby.javasupport.JavaUtil.RUBY_LONG_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       102: .line 1297
            getstatic org.jruby.javasupport.JavaUtil.RUBY_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.RUBY_LONG_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       103: .line 1298
            getstatic org.jruby.javasupport.JavaUtil.RUBY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Float;
            getstatic org.jruby.javasupport.JavaUtil.RUBY_FLOAT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       104: .line 1299
            getstatic org.jruby.javasupport.JavaUtil.RUBY_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Float.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.RUBY_FLOAT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       105: .line 1300
            getstatic org.jruby.javasupport.JavaUtil.RUBY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Double;
            getstatic org.jruby.javasupport.JavaUtil.RUBY_DOUBLE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       106: .line 1301
            getstatic org.jruby.javasupport.JavaUtil.RUBY_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Double.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.RUBY_DOUBLE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       107: .line 1318
            new org.jruby.javasupport.JavaUtil$29
            dup
            invokespecial org.jruby.javasupport.JavaUtil$29.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.ARRAY_BOOLEAN_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
       108: .line 1325
            new org.jruby.javasupport.JavaUtil$30
            dup
            invokespecial org.jruby.javasupport.JavaUtil$30.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.ARRAY_BYTE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
       109: .line 1332
            new org.jruby.javasupport.JavaUtil$31
            dup
            invokespecial org.jruby.javasupport.JavaUtil$31.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.ARRAY_SHORT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
       110: .line 1339
            new org.jruby.javasupport.JavaUtil$32
            dup
            invokespecial org.jruby.javasupport.JavaUtil$32.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.ARRAY_CHAR_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
       111: .line 1346
            new org.jruby.javasupport.JavaUtil$33
            dup
            invokespecial org.jruby.javasupport.JavaUtil$33.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.ARRAY_INT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
       112: .line 1353
            new org.jruby.javasupport.JavaUtil$34
            dup
            invokespecial org.jruby.javasupport.JavaUtil$34.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.ARRAY_LONG_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
       113: .line 1360
            new org.jruby.javasupport.JavaUtil$35
            dup
            invokespecial org.jruby.javasupport.JavaUtil$35.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.ARRAY_FLOAT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
       114: .line 1367
            new org.jruby.javasupport.JavaUtil$36
            dup
            invokespecial org.jruby.javasupport.JavaUtil$36.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.ARRAY_DOUBLE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
       115: .line 1374
            new org.jruby.javasupport.JavaUtil$37
            dup
            invokespecial org.jruby.javasupport.JavaUtil$37.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.ARRAY_OBJECT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
       116: .line 1381
            new org.jruby.javasupport.JavaUtil$38
            dup
            invokespecial org.jruby.javasupport.JavaUtil$38.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.ARRAY_CLASS_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
       117: .line 1388
            new org.jruby.javasupport.JavaUtil$39
            dup
            invokespecial org.jruby.javasupport.JavaUtil$39.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.ARRAY_STRING_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
       118: .line 1395
            new org.jruby.javasupport.JavaUtil$40
            dup
            invokespecial org.jruby.javasupport.JavaUtil$40.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.ARRAY_BIGINTEGER_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
       119: .line 1402
            new org.jruby.javasupport.JavaUtil$41
            dup
            invokespecial org.jruby.javasupport.JavaUtil$41.<init>:()V
            putstatic org.jruby.javasupport.JavaUtil.ARRAY_BIGDECIMAL_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
       120: .line 1409
            new java.util.HashMap
            dup
            bipush 24
            fconst_1
            invokespecial java.util.HashMap.<init>:(IF)V
            putstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
       121: .line 1411
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Boolean;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_BOOLEAN_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       122: .line 1412
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_BOOLEAN_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       123: .line 1413
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Byte;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_BYTE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       124: .line 1414
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_BYTE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       125: .line 1415
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Short;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_SHORT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       126: .line 1416
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Short.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_SHORT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       127: .line 1417
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Character;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CHAR_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       128: .line 1418
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Character.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CHAR_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       129: .line 1419
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Integer;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_INT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       130: .line 1420
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_INT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       131: .line 1421
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Long;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_LONG_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       132: .line 1422
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_LONG_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       133: .line 1423
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Float;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_FLOAT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       134: .line 1424
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Float.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_FLOAT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       135: .line 1425
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Double;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_DOUBLE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       136: .line 1426
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            getstatic java.lang.Double.TYPE:Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_DOUBLE_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       137: .line 1427
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/String;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_STRING_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       138: .line 1428
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/lang/Class;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CLASS_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       139: .line 1429
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/math/BigInteger;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_BIGINTEGER_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       140: .line 1430
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            ldc Ljava/math/BigDecimal;
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_BIGDECIMAL_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       141: .line 1632
            return
      LocalVariableTable:
        Start  End  Slot              Name  Signature
           75   84     0  primitiveClasses  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Class;>;

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.javasupport.JavaUtil this
         0: .line 97
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.jruby.javasupport.JavaUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/javasupport/JavaUtil;

  public static org.jruby.runtime.builtin.IRubyObject[] convertJavaArrayToRuby(org.jruby.Ruby, java.lang.Object[]);
    descriptor: (Lorg/jruby/Ruby;[Ljava/lang/Object;)[Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.Object[] objects
         0: .line 99
            aload 1 /* objects */
            ifnull 1
            aload 1 /* objects */
            arraylength
            ifne 2
      StackMap locals:
      StackMap stack:
         1: getstatic org.jruby.runtime.builtin.IRubyObject.NULL_ARRAY:[Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 101
      StackMap locals:
      StackMap stack:
            aload 1 /* objects */
            instanceof java.lang.String[]
            ifeq 3
            aload 0 /* runtime */
            aload 1 /* objects */
            checkcast java.lang.String[]
            getstatic org.jruby.javasupport.JavaUtil.JAVA_STRING_CONVERTER:Lorg/jruby/javasupport/JavaUtil$StringConverter;
            invokestatic org.jruby.javasupport.JavaUtil.convertStringArrayToRuby:(Lorg/jruby/Ruby;[Ljava/lang/String;Lorg/jruby/javasupport/JavaUtil$StringConverter;)[Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 103
      StackMap locals:
      StackMap stack:
            aload 1 /* objects */
            arraylength
            anewarray org.jruby.runtime.builtin.IRubyObject
            astore 2 /* rubyObjects */
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] rubyObjects
         4: .line 105
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 8
         6: .line 106
      StackMap locals: org.jruby.runtime.builtin.IRubyObject[] int
      StackMap stack:
            aload 2 /* rubyObjects */
            iload 3 /* i */
            aload 0 /* runtime */
            aload 1 /* objects */
            iload 3 /* i */
            aaload
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObject:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            aastore
         7: .line 105
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 3 /* i */
            aload 1 /* objects */
            arraylength
            if_icmplt 6
        end local 3 // int i
         9: .line 108
            aload 2 /* rubyObjects */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] rubyObjects
        end local 1 // java.lang.Object[] objects
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0      runtime  Lorg/jruby/Ruby;
            0   10     1      objects  [Ljava/lang/Object;
            4   10     2  rubyObjects  [Lorg/jruby/runtime/builtin/IRubyObject;
            5    9     3            i  I
    MethodParameters:
         Name  Flags
      runtime  final
      objects  final

  public static org.jruby.runtime.builtin.IRubyObject[] convertStringArrayToRuby(org.jruby.Ruby, java.lang.String[], org.jruby.javasupport.JavaUtil$StringConverter);
    descriptor: (Lorg/jruby/Ruby;[Ljava/lang/String;Lorg/jruby/javasupport/JavaUtil$StringConverter;)[Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.String[] strings
        start local 2 // org.jruby.javasupport.JavaUtil$StringConverter converter
         0: .line 112
            aload 1 /* strings */
            ifnull 1
            aload 1 /* strings */
            arraylength
            ifne 2
      StackMap locals:
      StackMap stack:
         1: getstatic org.jruby.runtime.builtin.IRubyObject.NULL_ARRAY:[Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 114
      StackMap locals:
      StackMap stack:
            aload 1 /* strings */
            arraylength
            anewarray org.jruby.runtime.builtin.IRubyObject
            astore 3 /* rubyObjects */
        start local 3 // org.jruby.runtime.builtin.IRubyObject[] rubyObjects
         3: .line 116
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 7
         5: .line 117
      StackMap locals: org.jruby.runtime.builtin.IRubyObject[] int
      StackMap stack:
            aload 3 /* rubyObjects */
            iload 4 /* i */
            aload 0 /* runtime */
            aload 1 /* strings */
            iload 4 /* i */
            aaload
            aload 2 /* converter */
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObjectWithConverter:(Lorg/jruby/Ruby;Ljava/lang/Object;Lorg/jruby/javasupport/JavaUtil$JavaConverter;)Lorg/jruby/runtime/builtin/IRubyObject;
            aastore
         6: .line 116
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            aload 1 /* strings */
            arraylength
            if_icmplt 5
        end local 4 // int i
         8: .line 119
            aload 3 /* rubyObjects */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject[] rubyObjects
        end local 2 // org.jruby.javasupport.JavaUtil$StringConverter converter
        end local 1 // java.lang.String[] strings
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0      runtime  Lorg/jruby/Ruby;
            0    9     1      strings  [Ljava/lang/String;
            0    9     2    converter  Lorg/jruby/javasupport/JavaUtil$StringConverter;
            3    9     3  rubyObjects  [Lorg/jruby/runtime/builtin/IRubyObject;
            4    8     4            i  I
    MethodParameters:
           Name  Flags
      runtime    final
      strings    final
      converter  

  public static org.jruby.RubyArray convertJavaArrayToRubyWithNesting(org.jruby.runtime.ThreadContext, java.lang.Object);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;)Lorg/jruby/RubyArray;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.Object array
         0: .line 123
            aload 1 /* array */
            invokestatic java.lang.reflect.Array.getLength:(Ljava/lang/Object;)I
            istore 2 /* length */
        start local 2 // int length
         1: .line 124
            iload 2 /* length */
            anewarray org.jruby.runtime.builtin.IRubyObject
            astore 3 /* rubyElements */
        start local 3 // org.jruby.runtime.builtin.IRubyObject[] rubyElements
         2: .line 125
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 13
         4: .line 126
      StackMap locals: int org.jruby.runtime.builtin.IRubyObject[] int
      StackMap stack:
            aload 1 /* array */
            iload 4 /* i */
            invokestatic java.lang.reflect.Array.get:(Ljava/lang/Object;I)Ljava/lang/Object;
            astore 5 /* element */
        start local 5 // java.lang.Object element
         5: .line 127
            aload 5 /* element */
            instanceof org.jruby.java.proxies.ArrayJavaProxy
            ifeq 8
         6: .line 128
            aload 3 /* rubyElements */
            iload 4 /* i */
            aload 0 /* context */
            aload 5 /* element */
            checkcast org.jruby.java.proxies.ArrayJavaProxy
            invokevirtual org.jruby.java.proxies.ArrayJavaProxy.getObject:()Ljava/lang/Object;
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaArrayToRubyWithNesting:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;)Lorg/jruby/RubyArray;
            aastore
         7: .line 129
            goto 12
         8: .line 130
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 5 /* element */
            ifnull 11
            aload 5 /* element */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isArray:()Z
            ifeq 11
         9: .line 131
            aload 3 /* rubyElements */
            iload 4 /* i */
            aload 0 /* context */
            aload 5 /* element */
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaArrayToRubyWithNesting:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;)Lorg/jruby/RubyArray;
            aastore
        10: .line 132
            goto 12
        11: .line 134
      StackMap locals:
      StackMap stack:
            aload 3 /* rubyElements */
            iload 4 /* i */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 5 /* element */
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObject:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            aastore
        end local 5 // java.lang.Object element
        12: .line 125
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 4 /* i */
            iload 2 /* length */
            if_icmplt 4
        end local 4 // int i
        14: .line 137
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 3 /* rubyElements */
            invokevirtual org.jruby.Ruby.newArrayNoCopy:([Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject[] rubyElements
        end local 2 // int length
        end local 1 // java.lang.Object array
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   15     0       context  Lorg/jruby/runtime/ThreadContext;
            0   15     1         array  Ljava/lang/Object;
            1   15     2        length  I
            2   15     3  rubyElements  [Lorg/jruby/runtime/builtin/IRubyObject;
            3   14     4             i  I
            5   12     5       element  Ljava/lang/Object;
    MethodParameters:
         Name  Flags
      context  final
      array    final

  public static org.jruby.javasupport.JavaUtil$JavaConverter getJavaConverter(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.Class clazz
         0: .line 141
            getstatic org.jruby.javasupport.JavaUtil.JAVA_CONVERTERS:Ljava/util/Map;
            aload 0 /* clazz */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.jruby.javasupport.JavaUtil$JavaConverter
            astore 1 /* converter */
        start local 1 // org.jruby.javasupport.JavaUtil$JavaConverter converter
         1: .line 142
            aload 1 /* converter */
            ifnonnull 2
            getstatic org.jruby.javasupport.JavaUtil.JAVA_DEFAULT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            goto 3
      StackMap locals: org.jruby.javasupport.JavaUtil$JavaConverter
      StackMap stack:
         2: aload 1 /* converter */
      StackMap locals:
      StackMap stack: org.jruby.javasupport.JavaUtil$JavaConverter
         3: areturn
        end local 1 // org.jruby.javasupport.JavaUtil$JavaConverter converter
        end local 0 // java.lang.Class clazz
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0      clazz  Ljava/lang/Class;
            1    4     1  converter  Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    MethodParameters:
       Name  Flags
      clazz  

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

  public static org.jruby.runtime.builtin.IRubyObject convertJavaToRuby(org.jruby.Ruby, java.lang.Object, java.lang.Class);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;Ljava/lang/Class;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.Object object
        start local 2 // java.lang.Class javaClass
         0: .line 150
            aload 0 /* runtime */
            aload 1 /* object */
            aload 2 /* javaClass */
            invokestatic org.jruby.javasupport.JavaUtil.getJavaConverter:(Ljava/lang/Class;)Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObjectWithConverter:(Lorg/jruby/Ruby;Ljava/lang/Object;Lorg/jruby/javasupport/JavaUtil$JavaConverter;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // java.lang.Class javaClass
        end local 1 // java.lang.Object object
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0    runtime  Lorg/jruby/Ruby;
            0    1     1     object  Ljava/lang/Object;
            0    1     2  javaClass  Ljava/lang/Class;
    MethodParameters:
           Name  Flags
      runtime    
      object     
      javaClass  

  public static org.jruby.runtime.builtin.IRubyObject convertJavaToRuby(org.jruby.Ruby, int);
    descriptor: (Lorg/jruby/Ruby;I)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // int i
         0: .line 154
            aload 0 /* runtime */
            iload 1 /* i */
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            areturn
        end local 1 // int i
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1        i  I
    MethodParameters:
         Name  Flags
      runtime  
      i        

  public static org.jruby.runtime.builtin.IRubyObject convertJavaToRuby(org.jruby.Ruby, long);
    descriptor: (Lorg/jruby/Ruby;J)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // long l
         0: .line 158
            aload 0 /* runtime */
            lload 1 /* l */
            invokevirtual org.jruby.Ruby.newFixnum:(J)Lorg/jruby/RubyFixnum;
            areturn
        end local 1 // long l
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1        l  J
    MethodParameters:
         Name  Flags
      runtime  
      l        

  public static org.jruby.runtime.builtin.IRubyObject convertJavaToRuby(org.jruby.Ruby, float);
    descriptor: (Lorg/jruby/Ruby;F)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // float f
         0: .line 162
            aload 0 /* runtime */
            fload 1 /* f */
            f2d
            invokevirtual org.jruby.Ruby.newFloat:(D)Lorg/jruby/RubyFloat;
            areturn
        end local 1 // float f
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1        f  F
    MethodParameters:
         Name  Flags
      runtime  
      f        

  public static org.jruby.runtime.builtin.IRubyObject convertJavaToRuby(org.jruby.Ruby, double);
    descriptor: (Lorg/jruby/Ruby;D)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // double d
         0: .line 166
            aload 0 /* runtime */
            dload 1 /* d */
            invokevirtual org.jruby.Ruby.newFloat:(D)Lorg/jruby/RubyFloat;
            areturn
        end local 1 // double d
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1        d  D
    MethodParameters:
         Name  Flags
      runtime  
      d        

  public static org.jruby.runtime.builtin.IRubyObject convertJavaToRuby(org.jruby.Ruby, boolean);
    descriptor: (Lorg/jruby/Ruby;Z)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // boolean b
         0: .line 170
            aload 0 /* runtime */
            iload 1 /* b */
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 1 // boolean b
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  runtime  Lorg/jruby/Ruby;
            0    1     1        b  Z
    MethodParameters:
         Name  Flags
      runtime  
      b        

  public static org.jruby.runtime.builtin.IRubyObject convertJavaToUsableRubyObject(org.jruby.Ruby, java.lang.Object);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.Object object
         0: .line 182
            aload 0 /* runtime */
            aload 1 /* object */
            invokestatic org.jruby.javasupport.JavaUtil.trySimpleConversions:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 2 /* result */
        start local 2 // org.jruby.runtime.builtin.IRubyObject result
         1: .line 184
            aload 2 /* result */
            ifnull 2
            aload 2 /* result */
            areturn
         2: .line 186
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 1 /* object */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic org.jruby.javasupport.JavaUtil.getJavaConverter:(Ljava/lang/Class;)Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            astore 3 /* converter */
        start local 3 // org.jruby.javasupport.JavaUtil$JavaConverter converter
         3: .line 187
            aload 3 /* converter */
            ifnull 4
            aload 3 /* converter */
            getstatic org.jruby.javasupport.JavaUtil.JAVA_DEFAULT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            if_acmpne 5
         4: .line 188
      StackMap locals: org.jruby.javasupport.JavaUtil$JavaConverter
      StackMap stack:
            aload 0 /* runtime */
            aload 1 /* object */
            invokestatic org.jruby.javasupport.Java.getInstance:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         5: .line 190
      StackMap locals:
      StackMap stack:
            aload 3 /* converter */
            aload 0 /* runtime */
            aload 1 /* object */
            invokevirtual org.jruby.javasupport.JavaUtil$JavaConverter.convert:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.javasupport.JavaUtil$JavaConverter converter
        end local 2 // org.jruby.runtime.builtin.IRubyObject result
        end local 1 // java.lang.Object object
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0    runtime  Lorg/jruby/Ruby;
            0    6     1     object  Ljava/lang/Object;
            1    6     2     result  Lorg/jruby/runtime/builtin/IRubyObject;
            3    6     3  converter  Lorg/jruby/javasupport/JavaUtil$JavaConverter;
    MethodParameters:
         Name  Flags
      runtime  
      object   

  public static org.jruby.runtime.builtin.IRubyObject convertJavaToUsableRubyObjectWithConverter(org.jruby.Ruby, java.lang.Object, org.jruby.javasupport.JavaUtil$JavaConverter);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;Lorg/jruby/javasupport/JavaUtil$JavaConverter;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.Object object
        start local 2 // org.jruby.javasupport.JavaUtil$JavaConverter converter
         0: .line 194
            aload 0 /* runtime */
            aload 1 /* object */
            invokestatic org.jruby.javasupport.JavaUtil.trySimpleConversions:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* result */
        start local 3 // org.jruby.runtime.builtin.IRubyObject result
         1: .line 196
            aload 3 /* result */
            ifnull 2
            aload 3 /* result */
            areturn
         2: .line 198
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 2 /* converter */
            ifnull 3
            aload 2 /* converter */
            getstatic org.jruby.javasupport.JavaUtil.JAVA_DEFAULT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            if_acmpne 4
         3: .line 199
      StackMap locals:
      StackMap stack:
            aload 0 /* runtime */
            aload 1 /* object */
            invokestatic org.jruby.javasupport.Java.getInstance:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         4: .line 201
      StackMap locals:
      StackMap stack:
            aload 2 /* converter */
            aload 0 /* runtime */
            aload 1 /* object */
            invokevirtual org.jruby.javasupport.JavaUtil$JavaConverter.convert:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject result
        end local 2 // org.jruby.javasupport.JavaUtil$JavaConverter converter
        end local 1 // java.lang.Object object
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0    runtime  Lorg/jruby/Ruby;
            0    5     1     object  Ljava/lang/Object;
            0    5     2  converter  Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            1    5     3     result  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
           Name  Flags
      runtime    
      object     
      converter  

  public static org.jruby.runtime.builtin.IRubyObject convertJavaArrayElementToRuby(org.jruby.Ruby, org.jruby.javasupport.JavaUtil$JavaConverter, java.lang.Object, int);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/javasupport/JavaUtil$JavaConverter;Ljava/lang/Object;I)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.javasupport.JavaUtil$JavaConverter converter
        start local 2 // java.lang.Object array
        start local 3 // int i
         0: .line 205
            aload 1 /* converter */
            ifnull 1
            aload 1 /* converter */
            getstatic org.jruby.javasupport.JavaUtil.JAVA_DEFAULT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            if_acmpne 2
         1: .line 206
      StackMap locals:
      StackMap stack:
            aload 0 /* runtime */
            aload 2 /* array */
            checkcast java.lang.Object[]
            iload 3 /* i */
            aaload
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObject:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 208
      StackMap locals:
      StackMap stack:
            aload 1 /* converter */
            aload 0 /* runtime */
            aload 2 /* array */
            iload 3 /* i */
            invokevirtual org.jruby.javasupport.JavaUtil$JavaConverter.get:(Lorg/jruby/Ruby;Ljava/lang/Object;I)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // int i
        end local 2 // java.lang.Object array
        end local 1 // org.jruby.javasupport.JavaUtil$JavaConverter converter
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0    runtime  Lorg/jruby/Ruby;
            0    3     1  converter  Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            0    3     2      array  Ljava/lang/Object;
            0    3     3          i  I
    MethodParameters:
           Name  Flags
      runtime    
      converter  
      array      
      i          

  public static java.lang.Class<?> primitiveToWrapper(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Ljava/lang/Class;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Class type
         0: .line 212
            aload 0 /* type */
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifeq 1
            aload 0 /* type */
            invokestatic org.jruby.util.CodegenUtils.getBoxType:(Ljava/lang/Class;)Ljava/lang/Class;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* type */
      StackMap locals:
      StackMap stack: java.lang.Class
         2: areturn
        end local 0 // java.lang.Class type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  type  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Ljava/lang/Class<*>;
    MethodParameters:
      Name  Flags
      type  final

  public static boolean isDuckTypeConvertable(java.lang.Class<?>, java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;Ljava/lang/Class;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.Class argumentType
        start local 1 // java.lang.Class targetType
         0: .line 216
            aload 1 /* targetType */
            invokevirtual java.lang.Class.isInterface:()Z
            ifeq 4
         1: .line 217
            aload 1 /* targetType */
            aload 0 /* argumentType */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifne 4
         2: .line 218
            ldc Lorg/jruby/RubyObject;
            aload 0 /* argumentType */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 4
         3: .line 216
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_0
            ireturn
        end local 1 // java.lang.Class targetType
        end local 0 // java.lang.Class argumentType
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0  argumentType  Ljava/lang/Class<*>;
            0    5     1    targetType  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;Ljava/lang/Class<*>;)Z
    MethodParameters:
              Name  Flags
      argumentType  final
      targetType    final

  public static <T> T convertProcToInterface(org.jruby.runtime.ThreadContext, org.jruby.RubyObject, java.lang.Class<T>);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyObject;Ljava/lang/Class;)Ljava/lang/Object;
    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.RubyObject rubyObject
        start local 2 // java.lang.Class targetType
         0: .line 222
            aload 0 /* context */
            aload 1 /* rubyObject */
            aload 2 /* targetType */
            invokestatic org.jruby.javasupport.JavaUtil.convertProcToInterface:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyBasicObject;Ljava/lang/Class;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Class targetType
        end local 1 // org.jruby.RubyObject rubyObject
        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  rubyObject  Lorg/jruby/RubyObject;
            0    1     2  targetType  Ljava/lang/Class<TT;>;
    Signature: <T:Ljava/lang/Object;>(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyObject;Ljava/lang/Class<TT;>;)TT;
    MethodParameters:
            Name  Flags
      context     
      rubyObject  
      targetType  

  public static <T> T convertProcToInterface(org.jruby.runtime.ThreadContext, org.jruby.RubyBasicObject, java.lang.Class<T>);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyBasicObject;Ljava/lang/Class;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=13, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.RubyBasicObject rubyObject
        start local 2 // java.lang.Class targetType
         0: .line 227
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 230
            aload 1 /* rubyObject */
            invokevirtual org.jruby.RubyBasicObject.getMetaClass:()Lorg/jruby/RubyClass;
            astore 4 /* procClass */
        start local 4 // org.jruby.RubyClass procClass
         2: .line 233
            aload 3 /* runtime */
            aload 3 /* runtime */
            aload 2 /* targetType */
            invokestatic org.jruby.javasupport.JavaClass.get:(Lorg/jruby/Ruby;Ljava/lang/Class;)Lorg/jruby/javasupport/JavaClass;
            invokestatic org.jruby.javasupport.Java.getInterfaceModule:(Lorg/jruby/Ruby;Lorg/jruby/javasupport/JavaClass;)Lorg/jruby/RubyModule;
            astore 5 /* ifaceModule */
        start local 5 // org.jruby.RubyModule ifaceModule
         3: .line 234
            aload 5 /* ifaceModule */
            aload 1 /* rubyObject */
            invokevirtual org.jruby.RubyModule.isInstance:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifne 6
         4: .line 235
            aload 5 /* ifaceModule */
            aload 0 /* context */
            ldc "extend_object"
            aload 1 /* rubyObject */
            invokevirtual org.jruby.RubyModule.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         5: .line 236
            aload 5 /* ifaceModule */
            aload 0 /* context */
            ldc "extended"
            aload 1 /* rubyObject */
            invokevirtual org.jruby.RubyModule.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         6: .line 239
      StackMap locals: org.jruby.Ruby org.jruby.RubyClass org.jruby.RubyModule
      StackMap stack:
            aload 1 /* rubyObject */
            instanceof org.jruby.RubyProc
            ifeq 19
         7: .line 242
            aload 1 /* rubyObject */
            invokevirtual org.jruby.RubyBasicObject.getSingletonClass:()Lorg/jruby/RubyClass;
            astore 6 /* singletonClass */
        start local 6 // org.jruby.RubyClass singletonClass
         8: .line 244
            aload 4 /* procClass */
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getProc:()Lorg/jruby/RubyClass;
            if_acmpne 10
         9: .line 247
            aload 6 /* singletonClass */
            checkcast org.jruby.MetaClass
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getProc:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.MetaClass.setAttached:(Lorg/jruby/RubyBasicObject;)V
        10: .line 250
      StackMap locals: org.jruby.RubyClass
      StackMap stack:
            new org.jruby.javasupport.Java$ProcToInterface
            dup
            aload 6 /* singletonClass */
            invokespecial org.jruby.javasupport.Java$ProcToInterface.<init>:(Lorg/jruby/RubyClass;)V
            astore 7 /* procToIface */
        start local 7 // org.jruby.javasupport.Java$ProcToInterface procToIface
        11: .line 251
            aload 6 /* singletonClass */
            ldc "method_missing"
            aload 7 /* procToIface */
            invokevirtual org.jruby.RubyClass.addMethod:(Ljava/lang/String;Lorg/jruby/internal/runtime/methods/DynamicMethod;)V
        12: .line 255
            aload 2 /* targetType */
            invokevirtual java.lang.Class.getMethods:()[Ljava/lang/reflect/Method;
            dup
            astore 11
            arraylength
            istore 10
            iconst_0
            istore 9
            goto 18
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.RubyBasicObject java.lang.Class org.jruby.Ruby org.jruby.RubyClass org.jruby.RubyModule org.jruby.RubyClass org.jruby.javasupport.Java$ProcToInterface top int int java.lang.reflect.Method[]
      StackMap stack:
        13: aload 11
            iload 9
            aaload
            astore 8 /* method */
        start local 8 // java.lang.reflect.Method method
        14: .line 256
            aload 7 /* procToIface */
            aload 8 /* method */
            invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
            invokevirtual org.jruby.javasupport.Java$ProcToInterface.getConcreteMethod:(Ljava/lang/String;)Lorg/jruby/javasupport/Java$ProcToInterface$ConcreteMethod;
            astore 12 /* implMethod */
        start local 12 // org.jruby.javasupport.Java$ProcToInterface$ConcreteMethod implMethod
        15: .line 257
            aload 8 /* method */
            invokevirtual java.lang.reflect.Method.getModifiers:()I
            invokestatic java.lang.reflect.Modifier.isAbstract:(I)Z
            ifeq 17
        16: .line 258
            aload 6 /* singletonClass */
            aload 8 /* method */
            invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
            aload 12 /* implMethod */
            invokevirtual org.jruby.RubyClass.addMethodInternal:(Ljava/lang/String;Lorg/jruby/internal/runtime/methods/DynamicMethod;)V
        end local 12 // org.jruby.javasupport.Java$ProcToInterface$ConcreteMethod implMethod
        end local 8 // java.lang.reflect.Method method
        17: .line 255
      StackMap locals:
      StackMap stack:
            iinc 9 1
      StackMap locals:
      StackMap stack:
        18: iload 9
            iload 10
            if_icmplt 13
        end local 7 // org.jruby.javasupport.Java$ProcToInterface procToIface
        end local 6 // org.jruby.RubyClass singletonClass
        19: .line 263
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.RubyBasicObject java.lang.Class org.jruby.Ruby org.jruby.RubyClass org.jruby.RubyModule
      StackMap stack:
            aload 0 /* context */
            aload 1 /* rubyObject */
            ldc "__jcreate_meta!"
            invokestatic org.jruby.runtime.Helpers.invoke:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.javasupport.JavaObject
            astore 6 /* javaObject */
        start local 6 // org.jruby.javasupport.JavaObject javaObject
        20: .line 264
            aload 6 /* javaObject */
            invokevirtual org.jruby.javasupport.JavaObject.getValue:()Ljava/lang/Object;
            areturn
        end local 6 // org.jruby.javasupport.JavaObject javaObject
        end local 5 // org.jruby.RubyModule ifaceModule
        end local 4 // org.jruby.RubyClass procClass
        end local 3 // org.jruby.Ruby runtime
        end local 2 // java.lang.Class targetType
        end local 1 // org.jruby.RubyBasicObject rubyObject
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   21     0         context  Lorg/jruby/runtime/ThreadContext;
            0   21     1      rubyObject  Lorg/jruby/RubyBasicObject;
            0   21     2      targetType  Ljava/lang/Class<TT;>;
            1   21     3         runtime  Lorg/jruby/Ruby;
            2   21     4       procClass  Lorg/jruby/RubyClass;
            3   21     5     ifaceModule  Lorg/jruby/RubyModule;
            8   19     6  singletonClass  Lorg/jruby/RubyClass;
           11   19     7     procToIface  Lorg/jruby/javasupport/Java$ProcToInterface;
           14   17     8          method  Ljava/lang/reflect/Method;
           15   17    12      implMethod  Lorg/jruby/javasupport/Java$ProcToInterface$ConcreteMethod;
           20   21     6      javaObject  Lorg/jruby/javasupport/JavaObject;
    Signature: <T:Ljava/lang/Object;>(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyBasicObject;Ljava/lang/Class<TT;>;)TT;
    MethodParameters:
            Name  Flags
      context     
      rubyObject  
      targetType  

  public static <T> org.jruby.javasupport.JavaUtil$NumericConverter<T> getNumericConverter(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)Lorg/jruby/javasupport/JavaUtil$NumericConverter;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.Class target
         0: .line 268
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_CONVERTERS:Ljava/util/Map;
            aload 0 /* target */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.jruby.javasupport.JavaUtil$NumericConverter
            astore 1 /* converter */
        start local 1 // org.jruby.javasupport.JavaUtil$NumericConverter converter
         1: .line 269
            aload 1 /* converter */
            ifnonnull 2
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_OTHER:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            goto 3
      StackMap locals: org.jruby.javasupport.JavaUtil$NumericConverter
      StackMap stack:
         2: aload 1 /* converter */
      StackMap locals:
      StackMap stack: org.jruby.javasupport.JavaUtil$NumericConverter
         3: areturn
        end local 1 // org.jruby.javasupport.JavaUtil$NumericConverter converter
        end local 0 // java.lang.Class target
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0     target  Ljava/lang/Class<TT;>;
            1    4     1  converter  Lorg/jruby/javasupport/JavaUtil$NumericConverter;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Lorg/jruby/javasupport/JavaUtil$NumericConverter<TT;>;
    MethodParameters:
        Name  Flags
      target  

  public static boolean isJavaObject(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject object
         0: .line 278
            aload 0 /* object */
            instanceof org.jruby.java.proxies.JavaProxy
            ifne 1
            aload 0 /* object */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.dataGetStruct:()Ljava/lang/Object;
            instanceof org.jruby.javasupport.JavaObject
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject object
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0  object  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
        Name  Flags
      object  final

  public static <T> T unwrapJavaObject(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject object
         0: .line 288
            aload 0 /* object */
            instanceof org.jruby.java.proxies.JavaProxy
            ifeq 2
         1: .line 289
            aload 0 /* object */
            checkcast org.jruby.java.proxies.JavaProxy
            invokevirtual org.jruby.java.proxies.JavaProxy.getObject:()Ljava/lang/Object;
            areturn
         2: .line 291
      StackMap locals:
      StackMap stack:
            aload 0 /* object */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.dataGetStruct:()Ljava/lang/Object;
            checkcast org.jruby.javasupport.JavaObject
            invokevirtual org.jruby.javasupport.JavaObject.getValue:()Ljava/lang/Object;
            areturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject object
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0  object  Lorg/jruby/runtime/builtin/IRubyObject;
    Signature: <T:Ljava/lang/Object;>(Lorg/jruby/runtime/builtin/IRubyObject;)TT;
    MethodParameters:
        Name  Flags
      object  final

  public static <T> T unwrapIfJavaObject(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject object
         0: .line 301
            aload 0 /* object */
            instanceof org.jruby.java.proxies.JavaProxy
            ifeq 2
         1: .line 302
            aload 0 /* object */
            checkcast org.jruby.java.proxies.JavaProxy
            invokevirtual org.jruby.java.proxies.JavaProxy.getObject:()Ljava/lang/Object;
            areturn
         2: .line 304
      StackMap locals:
      StackMap stack:
            aload 0 /* object */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.dataGetStruct:()Ljava/lang/Object;
            astore 1 /* unwrap */
        start local 1 // java.lang.Object unwrap
         3: .line 305
            aload 1 /* unwrap */
            instanceof org.jruby.javasupport.JavaObject
            ifeq 5
         4: .line 306
            aload 1 /* unwrap */
            checkcast org.jruby.javasupport.JavaObject
            invokevirtual org.jruby.javasupport.JavaObject.getValue:()Ljava/lang/Object;
            areturn
         5: .line 308
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* object */
            areturn
        end local 1 // java.lang.Object unwrap
        end local 0 // org.jruby.runtime.builtin.IRubyObject object
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0  object  Lorg/jruby/runtime/builtin/IRubyObject;
            3    6     1  unwrap  Ljava/lang/Object;
    Signature: <T:Ljava/lang/Object;>(Lorg/jruby/runtime/builtin/IRubyObject;)TT;
    MethodParameters:
        Name  Flags
      object  final

  public static java.lang.Object unwrapJavaValue(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, java.lang.String);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.runtime.builtin.IRubyObject object
        start local 2 // java.lang.String errorMessage
         0: .line 313
            aload 1 /* object */
            instanceof org.jruby.java.proxies.JavaProxy
            ifeq 2
         1: .line 314
            aload 1 /* object */
            checkcast org.jruby.java.proxies.JavaProxy
            invokevirtual org.jruby.java.proxies.JavaProxy.getObject:()Ljava/lang/Object;
            areturn
         2: .line 316
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            instanceof org.jruby.javasupport.JavaObject
            ifeq 4
         3: .line 317
            aload 1 /* object */
            checkcast org.jruby.javasupport.JavaObject
            invokevirtual org.jruby.javasupport.JavaObject.getValue:()Ljava/lang/Object;
            areturn
         4: .line 319
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.dataGetStruct:()Ljava/lang/Object;
            astore 3 /* unwrap */
        start local 3 // java.lang.Object unwrap
         5: .line 320
            aload 3 /* unwrap */
            instanceof org.jruby.runtime.builtin.IRubyObject
            ifeq 7
         6: .line 321
            aload 0 /* runtime */
            aload 3 /* unwrap */
            checkcast org.jruby.runtime.builtin.IRubyObject
            aload 2 /* errorMessage */
            invokestatic org.jruby.javasupport.JavaUtil.unwrapJavaValue:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Ljava/lang/Object;
            areturn
         7: .line 323
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* runtime */
            aload 2 /* errorMessage */
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 3 // java.lang.Object unwrap
        end local 2 // java.lang.String errorMessage
        end local 1 // org.jruby.runtime.builtin.IRubyObject object
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    8     0       runtime  Lorg/jruby/Ruby;
            0    8     1        object  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     2  errorMessage  Ljava/lang/String;
            5    8     3        unwrap  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
              Name  Flags
      runtime       final
      object        final
      errorMessage  final

  public static java.lang.Object unwrapJavaValue(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject object
         0: .line 332
            aload 0 /* object */
            instanceof org.jruby.java.proxies.JavaProxy
            ifeq 2
         1: .line 333
            aload 0 /* object */
            checkcast org.jruby.java.proxies.JavaProxy
            invokevirtual org.jruby.java.proxies.JavaProxy.getObject:()Ljava/lang/Object;
            areturn
         2: .line 335
      StackMap locals:
      StackMap stack:
            aload 0 /* object */
            instanceof org.jruby.javasupport.JavaObject
            ifeq 4
         3: .line 336
            aload 0 /* object */
            checkcast org.jruby.javasupport.JavaObject
            invokevirtual org.jruby.javasupport.JavaObject.getValue:()Ljava/lang/Object;
            areturn
         4: .line 338
      StackMap locals:
      StackMap stack:
            aload 0 /* object */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.dataGetStruct:()Ljava/lang/Object;
            astore 1 /* unwrap */
        start local 1 // java.lang.Object unwrap
         5: .line 339
            aload 1 /* unwrap */
            instanceof org.jruby.runtime.builtin.IRubyObject
            ifeq 7
         6: .line 340
            aload 1 /* unwrap */
            checkcast org.jruby.runtime.builtin.IRubyObject
            invokestatic org.jruby.javasupport.JavaUtil.unwrapJavaValue:(Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/lang/Object;
            areturn
         7: .line 342
      StackMap locals: java.lang.Object
      StackMap stack:
            aconst_null
            areturn
        end local 1 // java.lang.Object unwrap
        end local 0 // org.jruby.runtime.builtin.IRubyObject object
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0  object  Lorg/jruby/runtime/builtin/IRubyObject;
            5    8     1  unwrap  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      object  final

  public static java.lang.String getJavaPropertyName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // java.lang.String beanMethodName
         0: .line 355
            aload 0 /* beanMethodName */
            invokevirtual java.lang.String.length:()I
            istore 1 /* length */
        start local 1 // int length
         1: .line 356
            iload 1 /* length */
            iconst_3
            if_icmple 2
            aload 0 /* beanMethodName */
            iconst_2
            invokevirtual java.lang.String.charAt:(I)C
            bipush 116
            if_icmpne 2
            iconst_1
            goto 3
      StackMap locals: int
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 3 /* maybeGetOrSet */
        start local 3 // boolean maybeGetOrSet
         4: .line 357
            iload 3 /* maybeGetOrSet */
            ifeq 9
            aload 0 /* beanMethodName */
            ldc "get"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 5
            aload 0 /* beanMethodName */
            ldc "set"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 9
         5: .line 358
      StackMap locals: java.lang.String int top int
      StackMap stack:
            aload 0 /* beanMethodName */
            iconst_3
            invokevirtual java.lang.String.charAt:(I)C
            dup
            istore 2 /* ch */
        start local 2 // char ch
         6: invokestatic org.jruby.javasupport.JavaUtil.isUpperDigit:(C)Z
            ifeq 14
         7: .line 359
            iload 1 /* length */
            iconst_4
            if_icmpne 8
            iload 2 /* ch */
            invokestatic java.lang.Character.toLowerCase:(C)C
            invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
            areturn
         8: .line 360
      StackMap locals: java.lang.String int int int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            iload 2 /* ch */
            invokestatic java.lang.Character.toLowerCase:(C)C
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* beanMethodName */
            iconst_4
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // char ch
         9: .line 363
      StackMap locals: java.lang.String int top int
      StackMap stack:
            aload 0 /* beanMethodName */
            ldc "is"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 14
            iload 1 /* length */
            iconst_2
            if_icmple 14
        10: .line 364
            aload 0 /* beanMethodName */
            iconst_2
            invokevirtual java.lang.String.charAt:(I)C
            dup
            istore 2 /* ch */
        start local 2 // char ch
        11: invokestatic org.jruby.javasupport.JavaUtil.isUpperDigit:(C)Z
            ifeq 14
        12: .line 365
            iload 1 /* length */
            iconst_3
            if_icmpne 13
            iload 2 /* ch */
            invokestatic java.lang.Character.toLowerCase:(C)C
            invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
            areturn
        13: .line 366
      StackMap locals: java.lang.String int int int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            iload 2 /* ch */
            invokestatic java.lang.Character.toLowerCase:(C)C
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* beanMethodName */
            iconst_3
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // char ch
        14: .line 369
      StackMap locals: java.lang.String int top int
      StackMap stack:
            aconst_null
            areturn
        end local 3 // boolean maybeGetOrSet
        end local 1 // int length
        end local 0 // java.lang.String beanMethodName
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   15     0  beanMethodName  Ljava/lang/String;
            1   15     1          length  I
            6    9     2              ch  C
           11   14     2              ch  C
            4   15     3   maybeGetOrSet  Z
    MethodParameters:
                Name  Flags
      beanMethodName  final

  public static java.lang.String toJavaGetName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.lang.String propertyName
         0: .line 374
            aload 0 /* propertyName */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 375
      StackMap locals:
      StackMap stack:
            aload 0 /* propertyName */
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         2: .line 376
            iload 1 /* len */
            ifne 3
            aconst_null
            areturn
         3: .line 377
      StackMap locals: int
      StackMap stack:
            aload 0 /* propertyName */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.toUpperCase:(C)C
            istore 2 /* first */
        start local 2 // char first
         4: .line 378
            iload 1 /* len */
            iconst_1
            if_icmpne 5
            new java.lang.StringBuilder
            dup
            ldc "get"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* first */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
         5: .line 379
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "get"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* first */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* propertyName */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // char first
        end local 1 // int len
        end local 0 // java.lang.String propertyName
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0  propertyName  Ljava/lang/String;
            2    6     1           len  I
            4    6     2         first  C
    MethodParameters:
              Name  Flags
      propertyName  final

  public static java.lang.String toJavaIsName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.lang.String propertyName
         0: .line 384
            aload 0 /* propertyName */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 385
      StackMap locals:
      StackMap stack:
            aload 0 /* propertyName */
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         2: .line 386
            iload 1 /* len */
            ifne 3
            aconst_null
            areturn
         3: .line 387
      StackMap locals: int
      StackMap stack:
            aload 0 /* propertyName */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.toUpperCase:(C)C
            istore 2 /* first */
        start local 2 // char first
         4: .line 388
            iload 1 /* len */
            iconst_1
            if_icmpne 5
            new java.lang.StringBuilder
            dup
            ldc "is"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* first */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
         5: .line 389
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "is"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* first */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* propertyName */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // char first
        end local 1 // int len
        end local 0 // java.lang.String propertyName
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0  propertyName  Ljava/lang/String;
            2    6     1           len  I
            4    6     2         first  C
    MethodParameters:
              Name  Flags
      propertyName  final

  public static java.lang.String getRubyCasedName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // java.lang.String javaCasedName
         0: .line 399
            aload 0 /* javaCasedName */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 1 /* javaName */
        start local 1 // char[] javaName
         1: .line 400
            aload 1 /* javaName */
            arraylength
            istore 2 /* len */
        start local 2 // int len
         2: .line 401
            new java.lang.StringBuilder
            dup
            iload 2 /* len */
            bipush 8
            iadd
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 3 /* rubyName */
        start local 3 // java.lang.StringBuilder rubyName
         3: .line 403
            iconst_0
            istore 4 /* behind */
        start local 4 // int behind
         4: .line 404
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 9
         6: .line 405
      StackMap locals: java.lang.String char[] int java.lang.StringBuilder int int
      StackMap stack:
            iload 4 /* behind */
            iconst_2
            if_icmpge 7
            iinc 4 /* behind */ 1
            goto 8
         7: .line 406
      StackMap locals:
      StackMap stack:
            aload 3 /* rubyName */
            aload 1 /* javaName */
            iload 5 /* i */
            invokestatic org.jruby.javasupport.JavaUtil.consume:(Ljava/lang/StringBuilder;[CI)I
            istore 4 /* behind */
         8: .line 404
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 5 /* i */
            iload 2 /* len */
            if_icmplt 6
        end local 5 // int i
        10: .line 409
            iload 4 /* behind */
            iconst_2
            if_icmpne 17
        11: .line 410
            aload 1 /* javaName */
            iload 2 /* len */
            iconst_1
            isub
            caload
            istore 5 /* c1 */
        start local 5 // char c1
        12: aload 1 /* javaName */
            iload 2 /* len */
            iconst_2
            isub
            caload
            istore 6 /* c2 */
        start local 6 // char c2
        13: .line 411
            aload 3 /* rubyName */
            iload 6 /* c2 */
            invokestatic java.lang.Character.toLowerCase:(C)C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        14: .line 412
            iload 5 /* c1 */
            invokestatic java.lang.Character.isUpperCase:(C)Z
            ifeq 15
            iload 6 /* c2 */
            invokestatic java.lang.Character.isUpperCase:(C)Z
            ifne 15
            aload 3 /* rubyName */
            bipush 95
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        15: .line 413
      StackMap locals: java.lang.String char[] int java.lang.StringBuilder int int int
      StackMap stack:
            aload 3 /* rubyName */
            iload 5 /* c1 */
            invokestatic java.lang.Character.toLowerCase:(C)C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 6 // char c2
        end local 5 // char c1
        16: .line 414
            goto 21
        17: .line 415
      StackMap locals:
      StackMap stack:
            iload 4 /* behind */
            ifle 21
        18: .line 416
            iload 4 /* behind */
            iconst_1
            if_icmple 20
        19: .line 417
            aload 3 /* rubyName */
            aload 1 /* javaName */
            iload 2 /* len */
            iconst_2
            isub
            caload
            invokestatic java.lang.Character.toLowerCase:(C)C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        20: .line 419
      StackMap locals:
      StackMap stack:
            aload 3 /* rubyName */
            aload 1 /* javaName */
            iload 2 /* len */
            iconst_1
            isub
            caload
            invokestatic java.lang.Character.toLowerCase:(C)C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        21: .line 421
      StackMap locals:
      StackMap stack:
            aload 3 /* rubyName */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // int behind
        end local 3 // java.lang.StringBuilder rubyName
        end local 2 // int len
        end local 1 // char[] javaName
        end local 0 // java.lang.String javaCasedName
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   22     0  javaCasedName  Ljava/lang/String;
            1   22     1       javaName  [C
            2   22     2            len  I
            3   22     3       rubyName  Ljava/lang/StringBuilder;
            4   22     4         behind  I
            5   10     5              i  I
           12   16     5             c1  C
           13   16     6             c2  C
    MethodParameters:
               Name  Flags
      javaCasedName  final

  private static int consume(java.lang.StringBuilder, char[], int);
    descriptor: (Ljava/lang/StringBuilder;[CI)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // java.lang.StringBuilder rubyName
        start local 1 // char[] javaName
        start local 2 // int i
         0: .line 425
            aload 1 /* javaName */
            iload 2 /* i */
            iconst_1
            isub
            caload
            istore 3 /* prev1 */
        start local 3 // char prev1
         1: aload 1 /* javaName */
            iload 2 /* i */
            iconst_2
            isub
            caload
            istore 4 /* prev2 */
        start local 4 // char prev2
         2: .line 426
            iload 4 /* prev2 */
            invokestatic org.jruby.javasupport.JavaUtil.isLowerDigit:(C)Z
            ifeq 5
            iload 3 /* prev1 */
            invokestatic java.lang.Character.isUpperCase:(C)Z
            ifeq 5
         3: .line 427
            aload 0 /* rubyName */
            iload 4 /* prev2 */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            bipush 95
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            iload 3 /* prev1 */
            invokestatic java.lang.Character.toLowerCase:(C)C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         4: .line 428
            iconst_1
            ireturn
         5: .line 431
      StackMap locals: int int
      StackMap stack:
            iload 4 /* prev2 */
            invokestatic org.jruby.javasupport.JavaUtil.isLetterDigit:(C)Z
            ifeq 9
            iload 3 /* prev1 */
            invokestatic java.lang.Character.isUpperCase:(C)Z
            ifeq 9
            aload 1 /* javaName */
            iload 2 /* i */
            caload
            dup
            istore 5 /* cur */
        start local 5 // char cur
         6: invokestatic java.lang.Character.isLowerCase:(C)Z
            ifeq 9
         7: .line 432
            aload 0 /* rubyName */
            iload 4 /* prev2 */
            invokestatic java.lang.Character.toLowerCase:(C)C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            bipush 95
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            iload 3 /* prev1 */
            invokestatic java.lang.Character.toLowerCase:(C)C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            iload 5 /* cur */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         8: .line 433
            iconst_0
            ireturn
        end local 5 // char cur
         9: .line 435
      StackMap locals:
      StackMap stack:
            aload 0 /* rubyName */
            iload 4 /* prev2 */
            invokestatic java.lang.Character.toLowerCase:(C)C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        10: .line 436
            iconst_2
            ireturn
        end local 4 // char prev2
        end local 3 // char prev1
        end local 2 // int i
        end local 1 // char[] javaName
        end local 0 // java.lang.StringBuilder rubyName
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0  rubyName  Ljava/lang/StringBuilder;
            0   11     1  javaName  [C
            0   11     2         i  I
            1   11     3     prev1  C
            2   11     4     prev2  C
            6    9     5       cur  C
    MethodParameters:
          Name  Flags
      rubyName  final
      javaName  final
      i         

  private static boolean isUpperDigit(char);
    descriptor: (C)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char c
         0: .line 440
            iload 0 /* c */
            invokestatic java.lang.Character.isUpperCase:(C)Z
            ifne 1
            iload 0 /* c */
            invokestatic java.lang.Character.isDigit:(C)Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     c  C
    MethodParameters:
      Name  Flags
      c     

  private static boolean isLowerDigit(char);
    descriptor: (C)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char c
         0: .line 443
            iload 0 /* c */
            invokestatic java.lang.Character.isLowerCase:(C)Z
            ifne 1
            iload 0 /* c */
            invokestatic java.lang.Character.isDigit:(C)Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     c  C
    MethodParameters:
      Name  Flags
      c     

  private static boolean isLetterDigit(char);
    descriptor: (C)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // char c
         0: .line 446
            iload 0 /* c */
            invokestatic java.lang.Character.isLetter:(C)Z
            ifne 1
            iload 0 /* c */
            invokestatic java.lang.Character.isDigit:(C)Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     c  C
    MethodParameters:
      Name  Flags
      c     

  public static java.lang.String getJavaCasedName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // java.lang.String javaCasedName
         0: .line 451
            getstatic org.jruby.javasupport.JavaUtil.RUBY_CASE_SPLITTER:Ljava/util/regex/Pattern;
            aload 0 /* javaCasedName */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 1 /* m */
        start local 1 // java.util.regex.Matcher m
         1: .line 452
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 2 /* newName */
        start local 2 // java.lang.StringBuffer newName
         2: .line 453
            aload 1 /* m */
            invokevirtual java.util.regex.Matcher.find:()Z
            ifne 4
         3: .line 454
            aconst_null
            areturn
         4: .line 456
      StackMap locals: java.util.regex.Matcher java.lang.StringBuffer
      StackMap stack:
            aload 1 /* m */
            invokevirtual java.util.regex.Matcher.reset:()Ljava/util/regex/Matcher;
            pop
         5: .line 458
            goto 7
         6: .line 459
      StackMap locals:
      StackMap stack:
            aload 1 /* m */
            aload 2 /* newName */
            new java.lang.StringBuilder
            dup
            aload 1 /* m */
            iconst_1
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* m */
            iconst_2
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.toUpperCase:(C)C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.regex.Matcher.appendReplacement:(Ljava/lang/StringBuffer;Ljava/lang/String;)Ljava/util/regex/Matcher;
            pop
         7: .line 458
      StackMap locals:
      StackMap stack:
            aload 1 /* m */
            invokevirtual java.util.regex.Matcher.find:()Z
            ifne 6
         8: .line 462
            aload 1 /* m */
            aload 2 /* newName */
            invokevirtual java.util.regex.Matcher.appendTail:(Ljava/lang/StringBuffer;)Ljava/lang/StringBuffer;
            pop
         9: .line 464
            aload 2 /* newName */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuffer newName
        end local 1 // java.util.regex.Matcher m
        end local 0 // java.lang.String javaCasedName
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   10     0  javaCasedName  Ljava/lang/String;
            1   10     1              m  Ljava/util/regex/Matcher;
            2   10     2        newName  Ljava/lang/StringBuffer;
    MethodParameters:
               Name  Flags
      javaCasedName  

  public static java.util.Set<java.lang.String> getRubyNamesForJavaName(java.lang.String, java.util.List<java.lang.reflect.Method>);
    descriptor: (Ljava/lang/String;Ljava/util/List;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // java.lang.String javaName
        start local 1 // java.util.List methods
         0: .line 477
            aload 0 /* javaName */
            invokestatic org.jruby.javasupport.JavaUtil.getJavaPropertyName:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* javaPropertyName */
        start local 2 // java.lang.String javaPropertyName
         1: .line 478
            aload 0 /* javaName */
            invokestatic org.jruby.javasupport.JavaUtil.getRubyCasedName:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* rubyName */
        start local 3 // java.lang.String rubyName
         2: .line 480
            aload 1 /* methods */
            invokeinterface java.util.List.size:()I
            istore 4 /* len */
        start local 4 // int len
         3: .line 482
            new java.util.LinkedHashSet
            dup
            bipush 6
            iload 4 /* len */
            imul
            iconst_2
            iadd
            fconst_1
            invokespecial java.util.LinkedHashSet.<init>:(IF)V
            astore 5 /* nameSet */
        start local 5 // java.util.LinkedHashSet nameSet
         4: .line 483
            aload 5 /* nameSet */
            aload 0 /* javaName */
            invokevirtual java.util.LinkedHashSet.add:(Ljava/lang/Object;)Z
            pop
         5: .line 484
            aload 5 /* nameSet */
            aload 3 /* rubyName */
            invokevirtual java.util.LinkedHashSet.add:(Ljava/lang/Object;)Z
            pop
         6: .line 486
            iload 4 /* len */
            iconst_1
            if_icmpne 9
         7: .line 487
            aload 0 /* javaName */
            aload 1 /* methods */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.reflect.Method
            aload 2 /* javaPropertyName */
            aload 3 /* rubyName */
            aload 5 /* nameSet */
            invokestatic org.jruby.javasupport.JavaUtil.addRubyNamesForJavaName:(Ljava/lang/String;Ljava/lang/reflect/Method;Ljava/lang/String;Ljava/lang/String;Ljava/util/LinkedHashSet;)V
         8: .line 488
            goto 14
         9: .line 490
      StackMap locals: java.lang.String java.util.List java.lang.String java.lang.String int java.util.LinkedHashSet
      StackMap stack:
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        10: goto 13
        11: .line 491
      StackMap locals: int
      StackMap stack:
            aload 0 /* javaName */
            aload 1 /* methods */
            iload 6 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.reflect.Method
            aload 2 /* javaPropertyName */
            aload 3 /* rubyName */
            aload 5 /* nameSet */
            invokestatic org.jruby.javasupport.JavaUtil.addRubyNamesForJavaName:(Ljava/lang/String;Ljava/lang/reflect/Method;Ljava/lang/String;Ljava/lang/String;Ljava/util/LinkedHashSet;)V
        12: .line 490
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 6 /* i */
            iload 4 /* len */
            if_icmplt 11
        end local 6 // int i
        14: .line 494
      StackMap locals:
      StackMap stack:
            aload 5 /* nameSet */
            areturn
        end local 5 // java.util.LinkedHashSet nameSet
        end local 4 // int len
        end local 3 // java.lang.String rubyName
        end local 2 // java.lang.String javaPropertyName
        end local 1 // java.util.List methods
        end local 0 // java.lang.String javaName
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   15     0          javaName  Ljava/lang/String;
            0   15     1           methods  Ljava/util/List<Ljava/lang/reflect/Method;>;
            1   15     2  javaPropertyName  Ljava/lang/String;
            2   15     3          rubyName  Ljava/lang/String;
            3   15     4               len  I
            4   15     5           nameSet  Ljava/util/LinkedHashSet<Ljava/lang/String;>;
           10   14     6                 i  I
    Signature: (Ljava/lang/String;Ljava/util/List<Ljava/lang/reflect/Method;>;)Ljava/util/Set<Ljava/lang/String;>;
    MethodParameters:
          Name  Flags
      javaName  final
      methods   final

  private static void addRubyNamesForJavaName(java.lang.String, java.lang.reflect.Method, java.lang.String, java.lang.String, java.util.LinkedHashSet<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/lang/reflect/Method;Ljava/lang/String;Ljava/lang/String;Ljava/util/LinkedHashSet;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=10, args_size=5
        start local 0 // java.lang.String javaName
        start local 1 // java.lang.reflect.Method method
        start local 2 // java.lang.String javaPropertyName
        start local 3 // java.lang.String rubyName
        start local 4 // java.util.LinkedHashSet nameSet
         0: .line 499
            aload 1 /* method */
            invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
            astore 5 /* resultType */
        start local 5 // java.lang.Class resultType
         1: .line 502
            aload 2 /* javaPropertyName */
            ifnull 31
         2: .line 503
            aload 1 /* method */
            invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
            astore 6 /* argTypes */
        start local 6 // java.lang.Class[] argTypes
         3: .line 504
            aload 6 /* argTypes */
            arraylength
            istore 7 /* argCount */
        start local 7 // int argCount
         4: .line 506
            aload 3 /* rubyName */
            invokevirtual java.lang.String.length:()I
            iconst_3
            if_icmple 5
            aload 3 /* rubyName */
            iconst_3
            invokevirtual java.lang.String.charAt:(I)C
            bipush 95
            if_icmpne 5
            iconst_1
            goto 6
      StackMap locals: java.lang.Class java.lang.Class[] int
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: istore 8 /* maybeGetOrSet_ */
        start local 8 // boolean maybeGetOrSet_
         7: .line 508
            iload 8 /* maybeGetOrSet_ */
            ifeq 17
            aload 3 /* rubyName */
            ldc "get"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 17
         8: .line 509
            iload 7 /* argCount */
            ifeq 10
         9: .line 510
            iload 7 /* argCount */
            iconst_1
            if_icmpne 34
            aload 6 /* argTypes */
            iconst_0
            aaload
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            if_acmpne 34
        10: .line 511
      StackMap locals: int
      StackMap stack:
            aload 3 /* rubyName */
            iconst_4
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 9 /* rubyPropertyName */
        start local 9 // java.lang.String rubyPropertyName
        11: .line 512
            aload 4 /* nameSet */
            aload 2 /* javaPropertyName */
            invokevirtual java.util.LinkedHashSet.add:(Ljava/lang/Object;)Z
            pop
        12: .line 513
            aload 4 /* nameSet */
            aload 9 /* rubyPropertyName */
            invokevirtual java.util.LinkedHashSet.add:(Ljava/lang/Object;)Z
            pop
        13: .line 514
            aload 5 /* resultType */
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            if_acmpne 34
        14: .line 515
            aload 4 /* nameSet */
            new java.lang.StringBuilder
            dup
            aload 2 /* javaPropertyName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 63
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.LinkedHashSet.add:(Ljava/lang/Object;)Z
            pop
        15: .line 516
            aload 4 /* nameSet */
            new java.lang.StringBuilder
            dup
            aload 9 /* rubyPropertyName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 63
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.LinkedHashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // java.lang.String rubyPropertyName
        16: .line 519
            goto 34
        17: .line 520
      StackMap locals:
      StackMap stack:
            iload 8 /* maybeGetOrSet_ */
            ifeq 23
            aload 3 /* rubyName */
            ldc "set"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 23
        18: .line 521
            iload 7 /* argCount */
            iconst_1
            if_icmpne 34
            aload 5 /* resultType */
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            if_acmpne 34
        19: .line 522
            aload 3 /* rubyName */
            iconst_4
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 9 /* rubyPropertyName */
        start local 9 // java.lang.String rubyPropertyName
        20: .line 523
            aload 4 /* nameSet */
            new java.lang.StringBuilder
            dup
            aload 2 /* javaPropertyName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 61
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.LinkedHashSet.add:(Ljava/lang/Object;)Z
            pop
        21: .line 524
            aload 4 /* nameSet */
            new java.lang.StringBuilder
            dup
            aload 9 /* rubyPropertyName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 61
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.LinkedHashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // java.lang.String rubyPropertyName
        22: .line 526
            goto 34
        23: .line 527
      StackMap locals:
      StackMap stack:
            aload 3 /* rubyName */
            ldc "is_"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 34
        24: .line 528
            aload 5 /* resultType */
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            if_acmpne 34
        25: .line 529
            aload 3 /* rubyName */
            iconst_3
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 9 /* rubyPropertyName */
        start local 9 // java.lang.String rubyPropertyName
        26: .line 530
            aload 4 /* nameSet */
            aload 2 /* javaPropertyName */
            invokevirtual java.util.LinkedHashSet.add:(Ljava/lang/Object;)Z
            pop
        27: .line 531
            aload 4 /* nameSet */
            aload 9 /* rubyPropertyName */
            invokevirtual java.util.LinkedHashSet.add:(Ljava/lang/Object;)Z
            pop
        28: .line 532
            aload 4 /* nameSet */
            new java.lang.StringBuilder
            dup
            aload 2 /* javaPropertyName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 63
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.LinkedHashSet.add:(Ljava/lang/Object;)Z
            pop
        29: .line 533
            aload 4 /* nameSet */
            new java.lang.StringBuilder
            dup
            aload 9 /* rubyPropertyName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 63
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.LinkedHashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // java.lang.String rubyPropertyName
        end local 8 // boolean maybeGetOrSet_
        end local 7 // int argCount
        end local 6 // java.lang.Class[] argTypes
        30: .line 536
            goto 34
        31: .line 538
      StackMap locals:
      StackMap stack:
            aload 5 /* resultType */
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            if_acmpne 34
        32: .line 540
            aload 4 /* nameSet */
            new java.lang.StringBuilder
            dup
            aload 0 /* javaName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 63
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.LinkedHashSet.add:(Ljava/lang/Object;)Z
            pop
        33: .line 541
            aload 4 /* nameSet */
            new java.lang.StringBuilder
            dup
            aload 3 /* rubyName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 63
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.LinkedHashSet.add:(Ljava/lang/Object;)Z
            pop
        34: .line 544
      StackMap locals:
      StackMap stack:
            return
        end local 5 // java.lang.Class resultType
        end local 4 // java.util.LinkedHashSet nameSet
        end local 3 // java.lang.String rubyName
        end local 2 // java.lang.String javaPropertyName
        end local 1 // java.lang.reflect.Method method
        end local 0 // java.lang.String javaName
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   35     0          javaName  Ljava/lang/String;
            0   35     1            method  Ljava/lang/reflect/Method;
            0   35     2  javaPropertyName  Ljava/lang/String;
            0   35     3          rubyName  Ljava/lang/String;
            0   35     4           nameSet  Ljava/util/LinkedHashSet<Ljava/lang/String;>;
            1   35     5        resultType  Ljava/lang/Class<*>;
            3   30     6          argTypes  [Ljava/lang/Class;
            4   30     7          argCount  I
            7   30     8    maybeGetOrSet_  Z
           11   16     9  rubyPropertyName  Ljava/lang/String;
           20   22     9  rubyPropertyName  Ljava/lang/String;
           26   30     9  rubyPropertyName  Ljava/lang/String;
    Signature: (Ljava/lang/String;Ljava/lang/reflect/Method;Ljava/lang/String;Ljava/lang/String;Ljava/util/LinkedHashSet<Ljava/lang/String;>;)V
    MethodParameters:
                  Name  Flags
      javaName          final
      method            final
      javaPropertyName  final
      rubyName          final
      nameSet           final

  public static [] convertArguments(org.jruby.runtime.builtin.IRubyObject[], java.lang.Class<?>[]);
    descriptor: ([Lorg/jruby/runtime/builtin/IRubyObject;[Ljava/lang/Class;)[Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 1 // java.lang.Class[] types
         0: .line 547
            aload 0 /* args */
            aload 1 /* types */
            iconst_0
            invokestatic org.jruby.javasupport.JavaUtil.convertArguments:([Lorg/jruby/runtime/builtin/IRubyObject;[Ljava/lang/Class;I)[Ljava/lang/Object;
            areturn
        end local 1 // java.lang.Class[] types
        end local 0 // org.jruby.runtime.builtin.IRubyObject[] args
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     1  types  [Ljava/lang/Class;
    Signature: ([Lorg/jruby/runtime/builtin/IRubyObject;[Ljava/lang/Class<*>;)[Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      args   final
      types  final

  public static [] convertArguments(org.jruby.runtime.builtin.IRubyObject[], java.lang.Class<?>[], int);
    descriptor: ([Lorg/jruby/runtime/builtin/IRubyObject;[Ljava/lang/Class;I)[Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 1 // java.lang.Class[] types
        start local 2 // int offset
         0: .line 551
            aload 0 /* args */
            arraylength
            iload 2 /* offset */
            isub
            anewarray java.lang.Object
            astore 3 /* arguments */
        start local 3 // java.lang.Object[] arguments
         1: .line 552
            aload 3 /* arguments */
            arraylength
            istore 4 /* i */
        start local 4 // int i
         2: goto 4
         3: .line 553
      StackMap locals: java.lang.Object[] int
      StackMap stack:
            aload 3 /* arguments */
            iload 4 /* i */
            aload 0 /* args */
            iload 4 /* i */
            iload 2 /* offset */
            iadd
            aaload
            aload 1 /* types */
            iload 4 /* i */
            aaload
            invokeinterface org.jruby.runtime.builtin.IRubyObject.toJava:(Ljava/lang/Class;)Ljava/lang/Object;
            aastore
         4: .line 552
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ -1
            iload 4 /* i */
            ifge 3
        end local 4 // int i
         5: .line 555
            aload 3 /* arguments */
            areturn
        end local 3 // java.lang.Object[] arguments
        end local 2 // int offset
        end local 1 // java.lang.Class[] types
        end local 0 // org.jruby.runtime.builtin.IRubyObject[] args
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    6     1      types  [Ljava/lang/Class;
            0    6     2     offset  I
            1    6     3  arguments  [Ljava/lang/Object;
            2    5     4          i  I
    Signature: ([Lorg/jruby/runtime/builtin/IRubyObject;[Ljava/lang/Class<*>;I)[Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      args    final
      types   final
      offset  

  public static <T> T clone();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.Object object
         0: .line 564
            aload 0 /* object */
            iconst_0
            invokestatic org.jruby.javasupport.JavaUtil.clone:(Ljava/lang/Object;Z)Ljava/lang/Object;
            areturn
        end local 0 // java.lang.Object object
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  object  Ljava/lang/Object;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Object;)TT;
    MethodParameters:
        Name  Flags
      object  final

  static java.lang.Object clone(java.lang.Object, boolean);
    descriptor: (Ljava/lang/Object;Z)Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.Object object
        start local 1 // boolean silent
         0: .line 569
            aload 0 /* object */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc "clone"
            iconst_0
            anewarray java.lang.Class
            invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 2 /* clone */
        start local 2 // java.lang.reflect.Method clone
         1: .line 570
            aload 2 /* clone */
            aload 0 /* object */
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
         2: areturn
        end local 2 // java.lang.reflect.Method clone
         3: .line 572
      StackMap locals:
      StackMap stack: java.lang.ReflectiveOperationException
            pop
         4: .line 573
            aconst_null
            areturn
         5: .line 575
      StackMap locals:
      StackMap stack: java.lang.reflect.InvocationTargetException
            astore 2 /* e */
        start local 2 // java.lang.reflect.InvocationTargetException e
         6: .line 576
            iload 1 /* silent */
            ifne 7
            aload 2 /* e */
            invokevirtual java.lang.reflect.InvocationTargetException.getTargetException:()Ljava/lang/Throwable;
            invokestatic org.jruby.runtime.Helpers.throwException:(Ljava/lang/Throwable;)V
         7: .line 577
      StackMap locals: java.lang.reflect.InvocationTargetException
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.reflect.InvocationTargetException e
        end local 1 // boolean silent
        end local 0 // java.lang.Object object
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0  object  Ljava/lang/Object;
            0    8     1  silent  Z
            1    3     2   clone  Ljava/lang/reflect/Method;
            6    8     2       e  Ljava/lang/reflect/InvocationTargetException;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.NoSuchMethodException
           0     2       3  Class java.lang.IllegalAccessException
           0     2       5  Class java.lang.reflect.InvocationTargetException
    MethodParameters:
        Name  Flags
      object  final
      silent  final

  public static org.jruby.runtime.builtin.IRubyObject trySimpleConversions(org.jruby.Ruby, java.lang.Object);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=4, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.Object object
         0: .line 595
            aload 1 /* object */
            ifnonnull 1
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         1: .line 597
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            instanceof org.jruby.runtime.builtin.IRubyObject
            ifeq 2
            aload 1 /* object */
            checkcast org.jruby.runtime.builtin.IRubyObject
            areturn
         2: .line 599
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            instanceof org.jruby.java.proxies.RubyObjectHolderProxy
            ifeq 4
         3: .line 600
            aload 1 /* object */
            checkcast org.jruby.java.proxies.RubyObjectHolderProxy
            invokeinterface org.jruby.java.proxies.RubyObjectHolderProxy.__ruby_object:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         4: .line 603
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            instanceof org.jruby.javasupport.proxy.InternalJavaProxy
            ifeq 8
         5: .line 604
            aload 1 /* object */
            checkcast org.jruby.javasupport.proxy.InternalJavaProxy
            astore 2 /* internalJavaProxy */
        start local 2 // org.jruby.javasupport.proxy.InternalJavaProxy internalJavaProxy
         6: .line 605
            aload 2 /* internalJavaProxy */
            invokeinterface org.jruby.javasupport.proxy.InternalJavaProxy.___getInvocationHandler:()Lorg/jruby/javasupport/proxy/JavaProxyInvocationHandler;
            invokeinterface org.jruby.javasupport.proxy.JavaProxyInvocationHandler.getOrig:()Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* orig */
        start local 3 // org.jruby.runtime.builtin.IRubyObject orig
         7: .line 606
            aload 3 /* orig */
            ifnull 8
            aload 3 /* orig */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject orig
        end local 2 // org.jruby.javasupport.proxy.InternalJavaProxy internalJavaProxy
         8: .line 609
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // java.lang.Object object
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    9     0            runtime  Lorg/jruby/Ruby;
            0    9     1             object  Ljava/lang/Object;
            6    8     2  internalJavaProxy  Lorg/jruby/javasupport/proxy/InternalJavaProxy;
            7    8     3               orig  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      runtime  
      object   

  private static boolean isDoubleFloatable(double);
    descriptor: (D)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // double value
         0: .line 989
            iconst_1
            ireturn
        end local 0 // double value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  value  D
    MethodParameters:
       Name  Flags
      value  

  private static boolean isLongByteable(long);
    descriptor: (J)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // long value
         0: .line 992
            lload 0 /* value */
            ldc -128
            lcmp
            iflt 1
            lload 0 /* value */
            ldc 127
            lcmp
            ifgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // long value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0  value  J
    MethodParameters:
       Name  Flags
      value  

  private static boolean isLongShortable(long);
    descriptor: (J)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // long value
         0: .line 995
            lload 0 /* value */
            ldc -32768
            lcmp
            iflt 1
            lload 0 /* value */
            ldc 32767
            lcmp
            ifgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // long value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0  value  J
    MethodParameters:
       Name  Flags
      value  

  private static boolean isLongCharable(long);
    descriptor: (J)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // long value
         0: .line 998
            lload 0 /* value */
            lconst_0
            lcmp
            iflt 1
            lload 0 /* value */
            ldc 65535
            lcmp
            ifgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // long value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0  value  J
    MethodParameters:
       Name  Flags
      value  

  private static boolean isLongIntable(long);
    descriptor: (J)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // long value
         0: .line 1001
            lload 0 /* value */
            ldc -2147483648
            lcmp
            iflt 1
            lload 0 /* value */
            ldc 2147483647
            lcmp
            ifgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // long value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0  value  J
    MethodParameters:
       Name  Flags
      value  

  public static java.lang.Object objectFromJavaProxy(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject self
         0: .line 1029
            aload 0 /* self */
            checkcast org.jruby.java.proxies.JavaProxy
            invokevirtual org.jruby.java.proxies.JavaProxy.getObject:()Ljava/lang/Object;
            areturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject self
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  self  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      self  

  public static java.lang.Class<?> getPrimitiveClass(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Class;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String name
         0: .line 1047
            aload 0 /* name */
            dup
            astore 1
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 9
          -1325958191: 1
               104431: 2
              3039496: 3
              3052374: 4
              3327612: 5
              3625364: 6
             64711720: 7
             97526364: 8
            109413500: 9
              default: 19
          }
      StackMap locals: java.lang.String
      StackMap stack:
         1: aload 1
            ldc "double"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 17
            goto 19
      StackMap locals:
      StackMap stack:
         2: aload 1
            ldc "int"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 14
            goto 19
      StackMap locals:
      StackMap stack:
         3: aload 1
            ldc "byte"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 11
            goto 19
      StackMap locals:
      StackMap stack:
         4: aload 1
            ldc "char"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 12
            goto 19
      StackMap locals:
      StackMap stack:
         5: aload 1
            ldc "long"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 15
            goto 19
      StackMap locals:
      StackMap stack:
         6: aload 1
            ldc "void"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 18
            goto 19
      StackMap locals:
      StackMap stack:
         7: aload 1
            ldc "boolean"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 10
            goto 19
      StackMap locals:
      StackMap stack:
         8: aload 1
            ldc "float"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 16
            goto 19
      StackMap locals:
      StackMap stack:
         9: aload 1
            ldc "short"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 13
            goto 19
        10: .line 1048
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            areturn
        11: .line 1049
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
            areturn
        12: .line 1050
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Character.TYPE:Ljava/lang/Class;
            areturn
        13: .line 1051
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Short.TYPE:Ljava/lang/Class;
            areturn
        14: .line 1052
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            areturn
        15: .line 1053
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            areturn
        16: .line 1054
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Float.TYPE:Ljava/lang/Class;
            areturn
        17: .line 1055
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Double.TYPE:Ljava/lang/Class;
            areturn
        18: .line 1057
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            areturn
        19: .line 1059
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0  name  Ljava/lang/String;
    Signature: (Ljava/lang/String;)Ljava/lang/Class<*>;
    MethodParameters:
      Name  Flags
      name  final

  public static java.lang.Object convertRubyToJava(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
         0: .line 1064
            aload 0 /* rubyObject */
            ldc Ljava/lang/Object;
            invokestatic org.jruby.javasupport.JavaUtil.convertRubyToJava:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Class;)Ljava/lang/Object;
            areturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  rubyObject  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      rubyObject  

  public static java.lang.Object convertRubyToJava(org.jruby.runtime.builtin.IRubyObject, java.lang.Class);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Class;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
        start local 1 // java.lang.Class javaClass
         0: .line 1069
            aload 1 /* javaClass */
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            if_acmpeq 1
            aload 0 /* rubyObject */
            ifnull 1
            aload 0 /* rubyObject */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 2
         1: .line 1070
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
         2: .line 1073
      StackMap locals:
      StackMap stack:
            aload 0 /* rubyObject */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         3: .line 1074
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            astore 3 /* context */
        start local 3 // org.jruby.runtime.ThreadContext context
         4: .line 1076
            aload 0 /* rubyObject */
            astore 4 /* origObject */
        start local 4 // org.jruby.runtime.builtin.IRubyObject origObject
         5: .line 1077
            aload 0 /* rubyObject */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.dataGetStruct:()Ljava/lang/Object;
            instanceof org.jruby.javasupport.JavaObject
            ifeq 9
         6: .line 1078
            aload 0 /* rubyObject */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.dataGetStruct:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 0 /* rubyObject */
         7: .line 1079
            aload 0 /* rubyObject */
            ifnonnull 13
         8: .line 1080
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "dataGetStruct returned null for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* origObject */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getType:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 1082
      StackMap locals: org.jruby.Ruby org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 0 /* rubyObject */
            ldc "java_object"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.respondsTo:(Ljava/lang/String;)Z
            ifeq 13
        10: .line 1083
            aload 0 /* rubyObject */
            aload 3 /* context */
            ldc "java_object"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 0 /* rubyObject */
        11: .line 1084
            aload 0 /* rubyObject */
            ifnonnull 13
        12: .line 1085
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "java_object returned null for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* origObject */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getType:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 1089
      StackMap locals:
      StackMap stack:
            aload 0 /* rubyObject */
            instanceof org.jruby.javasupport.JavaObject
            ifeq 16
        14: .line 1090
            aload 0 /* rubyObject */
            checkcast org.jruby.javasupport.JavaObject
            invokevirtual org.jruby.javasupport.JavaObject.getValue:()Ljava/lang/Object;
            astore 5 /* value */
        start local 5 // java.lang.Object value
        15: .line 1091
            aload 2 /* runtime */
            aload 5 /* value */
            aload 5 /* value */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic org.jruby.javasupport.JavaUtil.convertArgument:(Lorg/jruby/Ruby;Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
            areturn
        end local 5 // java.lang.Object value
        16: .line 1094
      StackMap locals:
      StackMap stack:
            aload 1 /* javaClass */
            ldc Ljava/lang/Object;
            if_acmpeq 17
            aload 1 /* javaClass */
            ifnonnull 18
        17: .line 1099
      StackMap locals:
      StackMap stack:
            aload 0 /* rubyObject */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getJavaClass:()Ljava/lang/Class;
            astore 1 /* javaClass */
        18: .line 1102
      StackMap locals:
      StackMap stack:
            aload 1 /* javaClass */
            aload 0 /* rubyObject */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 20
        19: .line 1104
            aload 0 /* rubyObject */
            areturn
        20: .line 1109
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.javasupport.JavaUtil.RUBY_CONVERTERS:Ljava/util/Map;
            aload 1 /* javaClass */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.jruby.javasupport.JavaUtil$RubyConverter
            astore 5 /* converter */
        start local 5 // org.jruby.javasupport.JavaUtil$RubyConverter converter
        21: .line 1110
            aload 5 /* converter */
            ifnull 23
        22: .line 1111
            aload 5 /* converter */
            aload 3 /* context */
            aload 0 /* rubyObject */
            invokeinterface org.jruby.javasupport.JavaUtil$RubyConverter.convert:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/lang/Object;
            areturn
        23: .line 1114
      StackMap locals: org.jruby.javasupport.JavaUtil$RubyConverter
      StackMap stack:
            aload 1 /* javaClass */
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifeq 27
        24: .line 1115
            aload 0 /* rubyObject */
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getString:()Lorg/jruby/RubyClass;
            ldc "to_s"
            iconst_1
            invokestatic org.jruby.util.TypeConverter.convertToType:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Ljava/lang/String;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyString
            invokevirtual org.jruby.RubyString.getUnicodeValue:()Ljava/lang/String;
            astore 6 /* s */
        start local 6 // java.lang.String s
        25: .line 1116
            aload 6 /* s */
            invokevirtual java.lang.String.length:()I
            ifle 26
            aload 6 /* s */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
            areturn
        26: .line 1117
      StackMap locals: java.lang.String
      StackMap stack:
            iconst_0
            invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
            areturn
        end local 6 // java.lang.String s
        27: .line 1119
      StackMap locals:
      StackMap stack:
            aload 1 /* javaClass */
            ldc Ljava/lang/String;
            if_acmpne 31
        28: .line 1120
            aload 0 /* rubyObject */
            aload 3 /* context */
            ldc "to_s"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyString
            astore 6 /* rubyString */
        start local 6 // org.jruby.RubyString rubyString
        29: .line 1121
            aload 6 /* rubyString */
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 7 /* bytes */
        start local 7 // org.jruby.util.ByteList bytes
        30: .line 1122
            aload 7 /* bytes */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 7 /* bytes */
            invokevirtual org.jruby.util.ByteList.begin:()I
            aload 7 /* bytes */
            invokevirtual org.jruby.util.ByteList.length:()I
            invokestatic org.jruby.RubyEncoding.decodeUTF8:([BII)Ljava/lang/String;
            areturn
        end local 7 // org.jruby.util.ByteList bytes
        end local 6 // org.jruby.RubyString rubyString
        31: .line 1124
      StackMap locals:
      StackMap stack:
            aload 1 /* javaClass */
            ldc Lorg/jruby/util/ByteList;
            if_acmpne 33
        32: .line 1125
            aload 0 /* rubyObject */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            areturn
        33: .line 1127
      StackMap locals:
      StackMap stack:
            aload 1 /* javaClass */
            ldc Ljava/math/BigInteger;
            if_acmpne 41
        34: .line 1128
            aload 0 /* rubyObject */
            instanceof org.jruby.RubyBignum
            ifeq 36
        35: .line 1129
            aload 0 /* rubyObject */
            checkcast org.jruby.RubyBignum
            invokevirtual org.jruby.RubyBignum.getValue:()Ljava/math/BigInteger;
            areturn
        36: .line 1131
      StackMap locals:
      StackMap stack:
            aload 0 /* rubyObject */
            instanceof org.jruby.RubyNumeric
            ifeq 38
        37: .line 1132
            aload 0 /* rubyObject */
            checkcast org.jruby.RubyNumeric
            invokevirtual org.jruby.RubyNumeric.getLongValue:()J
            invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
            areturn
        38: .line 1134
      StackMap locals:
      StackMap stack:
            aload 0 /* rubyObject */
            ldc "to_i"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.respondsTo:(Ljava/lang/String;)Z
            ifeq 41
        39: .line 1135
            aload 0 /* rubyObject */
            aload 3 /* context */
            ldc "to_f"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyNumeric
            astore 6 /* rubyNumeric */
        start local 6 // org.jruby.RubyNumeric rubyNumeric
        40: .line 1136
            aload 6 /* rubyNumeric */
            invokevirtual org.jruby.RubyNumeric.getLongValue:()J
            invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
            areturn
        end local 6 // org.jruby.RubyNumeric rubyNumeric
        41: .line 1139
      StackMap locals:
      StackMap stack:
            aload 1 /* javaClass */
            ldc Ljava/math/BigDecimal;
            if_acmpne 45
            aload 0 /* rubyObject */
            instanceof org.jruby.javasupport.JavaObject
            ifne 45
        42: .line 1140
            aload 0 /* rubyObject */
            ldc "to_f"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.respondsTo:(Ljava/lang/String;)Z
            ifeq 45
        43: .line 1141
            aload 0 /* rubyObject */
            aload 3 /* context */
            ldc "to_f"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyNumeric
            invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
            dstore 6 /* double_value */
        start local 6 // double double_value
        44: .line 1142
            new java.math.BigDecimal
            dup
            dload 6 /* double_value */
            invokespecial java.math.BigDecimal.<init>:(D)V
            areturn
        end local 6 // double double_value
        45: .line 1147
      StackMap locals:
      StackMap stack:
            aload 0 /* rubyObject */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 1 /* javaClass */
            invokestatic org.jruby.javasupport.JavaUtil.isDuckTypeConvertable:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifeq 48
        46: .line 1148
            aload 3 /* context */
            aload 0 /* rubyObject */
            checkcast org.jruby.RubyObject
            aload 1 /* javaClass */
            invokestatic org.jruby.javasupport.JavaUtil.convertProcToInterface:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyObject;Ljava/lang/Class;)Ljava/lang/Object;
        47: areturn
        48: .line 1150
      StackMap locals:
      StackMap stack:
            aload 0 /* rubyObject */
            checkcast org.jruby.javasupport.JavaObject
            invokevirtual org.jruby.javasupport.JavaObject.getValue:()Ljava/lang/Object;
        49: areturn
        50: .line 1152
      StackMap locals:
      StackMap stack: java.lang.ClassCastException
            astore 6 /* ex */
        start local 6 // java.lang.ClassCastException ex
        51: .line 1153
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getDebug:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 52
            aload 6 /* ex */
            invokevirtual java.lang.ClassCastException.printStackTrace:()V
        52: .line 1154
      StackMap locals: java.lang.ClassCastException
      StackMap stack:
            aconst_null
            areturn
        end local 6 // java.lang.ClassCastException ex
        end local 5 // org.jruby.javasupport.JavaUtil$RubyConverter converter
        end local 4 // org.jruby.runtime.builtin.IRubyObject origObject
        end local 3 // org.jruby.runtime.ThreadContext context
        end local 2 // org.jruby.Ruby runtime
        end local 1 // java.lang.Class javaClass
        end local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   53     0    rubyObject  Lorg/jruby/runtime/builtin/IRubyObject;
            0   53     1     javaClass  Ljava/lang/Class;
            3   53     2       runtime  Lorg/jruby/Ruby;
            4   53     3       context  Lorg/jruby/runtime/ThreadContext;
            5   53     4    origObject  Lorg/jruby/runtime/builtin/IRubyObject;
           15   16     5         value  Ljava/lang/Object;
           21   53     5     converter  Lorg/jruby/javasupport/JavaUtil$RubyConverter;
           25   27     6             s  Ljava/lang/String;
           29   31     6    rubyString  Lorg/jruby/RubyString;
           30   31     7         bytes  Lorg/jruby/util/ByteList;
           40   41     6   rubyNumeric  Lorg/jruby/RubyNumeric;
           44   45     6  double_value  D
           51   53     6            ex  Ljava/lang/ClassCastException;
      Exception table:
        from    to  target  type
          45    47      50  Class java.lang.ClassCastException
          48    49      50  Class java.lang.ClassCastException
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      rubyObject  
      javaClass   

  public static byte convertRubyToJavaByte(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
         0: .line 1160
            aload 0 /* rubyObject */
            getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
            invokestatic org.jruby.javasupport.JavaUtil.convertRubyToJava:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Class;)Ljava/lang/Object;
            checkcast java.lang.Byte
            invokevirtual java.lang.Byte.byteValue:()B
            ireturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  rubyObject  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      rubyObject  

  public static short convertRubyToJavaShort(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)S
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
         0: .line 1165
            aload 0 /* rubyObject */
            getstatic java.lang.Short.TYPE:Ljava/lang/Class;
            invokestatic org.jruby.javasupport.JavaUtil.convertRubyToJava:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Class;)Ljava/lang/Object;
            checkcast java.lang.Short
            invokevirtual java.lang.Short.shortValue:()S
            ireturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  rubyObject  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      rubyObject  

  public static char convertRubyToJavaChar(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)C
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
         0: .line 1170
            aload 0 /* rubyObject */
            getstatic java.lang.Character.TYPE:Ljava/lang/Class;
            invokestatic org.jruby.javasupport.JavaUtil.convertRubyToJava:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Class;)Ljava/lang/Object;
            checkcast java.lang.Character
            invokevirtual java.lang.Character.charValue:()C
            ireturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  rubyObject  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      rubyObject  

  public static int convertRubyToJavaInt(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
         0: .line 1175
            aload 0 /* rubyObject */
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            invokestatic org.jruby.javasupport.JavaUtil.convertRubyToJava:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Class;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  rubyObject  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      rubyObject  

  public static long convertRubyToJavaLong(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
         0: .line 1180
            aload 0 /* rubyObject */
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            invokestatic org.jruby.javasupport.JavaUtil.convertRubyToJava:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Class;)Ljava/lang/Object;
            checkcast java.lang.Long
            invokevirtual java.lang.Long.longValue:()J
            lreturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  rubyObject  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      rubyObject  

  public static float convertRubyToJavaFloat(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)F
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
         0: .line 1185
            aload 0 /* rubyObject */
            getstatic java.lang.Float.TYPE:Ljava/lang/Class;
            invokestatic org.jruby.javasupport.JavaUtil.convertRubyToJava:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Class;)Ljava/lang/Object;
            checkcast java.lang.Float
            invokevirtual java.lang.Float.floatValue:()F
            freturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  rubyObject  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      rubyObject  

  public static double convertRubyToJavaDouble(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
         0: .line 1190
            aload 0 /* rubyObject */
            getstatic java.lang.Double.TYPE:Ljava/lang/Class;
            invokestatic org.jruby.javasupport.JavaUtil.convertRubyToJava:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Class;)Ljava/lang/Object;
            checkcast java.lang.Double
            invokevirtual java.lang.Double.doubleValue:()D
            dreturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  rubyObject  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      rubyObject  

  public static boolean convertRubyToJavaBoolean(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
         0: .line 1195
            aload 0 /* rubyObject */
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            invokestatic org.jruby.javasupport.JavaUtil.convertRubyToJava:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Class;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject rubyObject
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  rubyObject  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      rubyObject  

  public static java.lang.Object convertArgumentToType(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.Class);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Class;)Ljava/lang/Object;
    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 arg
        start local 2 // java.lang.Class target
         0: .line 1200
            aload 1 /* arg */
            aload 2 /* target */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.toJava:(Ljava/lang/Class;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Class target
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg
        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      arg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2   target  Ljava/lang/Class;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      arg      
      target   

  public static java.lang.Object coerceNilToType(org.jruby.RubyNil, java.lang.Class);
    descriptor: (Lorg/jruby/RubyNil;Ljava/lang/Class;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyNil nil
        start local 1 // java.lang.Class target
         0: .line 1205
            aload 0 /* nil */
            aload 1 /* target */
            invokevirtual org.jruby.RubyNil.toJava:(Ljava/lang/Class;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.Class target
        end local 0 // org.jruby.RubyNil nil
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0     nil  Lorg/jruby/RubyNil;
            0    1     1  target  Ljava/lang/Class;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
        Name  Flags
      nil     
      target  

  public static org.jruby.runtime.builtin.IRubyObject convertJavaToRuby(org.jruby.Ruby, org.jruby.javasupport.JavaUtil$JavaConverter, java.lang.Object);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/javasupport/JavaUtil$JavaConverter;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.javasupport.JavaUtil$JavaConverter converter
        start local 2 // java.lang.Object object
         0: .line 1306
            aload 1 /* converter */
            ifnull 1
            aload 1 /* converter */
            getstatic org.jruby.javasupport.JavaUtil.JAVA_DEFAULT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            if_acmpne 2
         1: .line 1307
      StackMap locals:
      StackMap stack:
            aload 0 /* runtime */
            aload 2 /* object */
            invokestatic org.jruby.javasupport.Java.getInstance:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 1309
      StackMap locals:
      StackMap stack:
            aload 1 /* converter */
            aload 0 /* runtime */
            aload 2 /* object */
            invokevirtual org.jruby.javasupport.JavaUtil$JavaConverter.convert:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // java.lang.Object object
        end local 1 // org.jruby.javasupport.JavaUtil$JavaConverter converter
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0    runtime  Lorg/jruby/Ruby;
            0    3     1  converter  Lorg/jruby/javasupport/JavaUtil$JavaConverter;
            0    3     2     object  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
           Name  Flags
      runtime    
      converter  
      object     

  public static org.jruby.javasupport.JavaUtil$RubyConverter getArrayConverter(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.Class type
         0: .line 1435
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_CONVERTERS:Ljava/util/Map;
            aload 0 /* type */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.jruby.javasupport.JavaUtil$RubyConverter
            astore 1 /* converter */
        start local 1 // org.jruby.javasupport.JavaUtil$RubyConverter converter
         1: .line 1436
            aload 1 /* converter */
            ifnonnull 3
         2: .line 1437
            getstatic org.jruby.javasupport.JavaUtil.ARRAY_OBJECT_CONVERTER:Lorg/jruby/javasupport/JavaUtil$RubyConverter;
            areturn
         3: .line 1439
      StackMap locals: org.jruby.javasupport.JavaUtil$RubyConverter
      StackMap stack:
            aload 1 /* converter */
            areturn
        end local 1 // org.jruby.javasupport.JavaUtil$RubyConverter converter
        end local 0 // java.lang.Class type
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       type  Ljava/lang/Class;
            1    4     1  converter  Lorg/jruby/javasupport/JavaUtil$RubyConverter;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      type  

  public static org.jruby.runtime.builtin.IRubyObject ruby_to_java(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
        start local 1 // org.jruby.runtime.builtin.IRubyObject object
        start local 2 // org.jruby.runtime.Block unusedBlock
         0: .line 1447
            aload 1 /* object */
            ldc "to_java_object"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.respondsTo:(Ljava/lang/String;)Z
            ifeq 7
         1: .line 1448
            aload 1 /* object */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.dataGetStruct:()Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 3 /* result */
        start local 3 // org.jruby.runtime.builtin.IRubyObject result
         2: .line 1449
            aload 3 /* result */
            ifnonnull 4
         3: .line 1450
            aload 1 /* object */
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            ldc "to_java_object"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* result */
         4: .line 1452
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 3 /* result */
            instanceof org.jruby.javasupport.JavaObject
            ifeq 6
         5: .line 1453
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
            invokevirtual org.jruby.javasupport.JavaSupport.getObjectProxyCache:()Lorg/jruby/javasupport/util/ObjectProxyCache;
            aload 3 /* result */
            checkcast org.jruby.javasupport.JavaObject
            invokevirtual org.jruby.javasupport.JavaObject.getValue:()Ljava/lang/Object;
            aload 1 /* object */
            invokevirtual org.jruby.javasupport.util.ObjectProxyCache.put:(Ljava/lang/Object;Ljava/lang/Object;)V
         6: .line 1455
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject result
         7: .line 1458
      StackMap locals:
      StackMap stack:
            aload 0 /* recv */
            aload 1 /* object */
            aload 2 /* unusedBlock */
            invokestatic org.jruby.javasupport.JavaUtil.primitive_to_java:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.Block unusedBlock
        end local 1 // org.jruby.runtime.builtin.IRubyObject object
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     1       object  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     2  unusedBlock  Lorg/jruby/runtime/Block;
            2    7     3       result  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
             Name  Flags
      recv         final
      object       
      unusedBlock  

  public static org.jruby.runtime.builtin.IRubyObject java_to_primitive(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
        start local 1 // org.jruby.runtime.builtin.IRubyObject object
        start local 2 // org.jruby.runtime.Block unusedBlock
         0: .line 1463
            aload 1 /* object */
            instanceof org.jruby.javasupport.JavaObject
            ifeq 2
         1: .line 1464
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            aload 1 /* object */
            checkcast org.jruby.javasupport.JavaObject
            invokevirtual org.jruby.javasupport.JavaObject.getValue:()Ljava/lang/Object;
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToRuby:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 1467
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            areturn
        end local 2 // org.jruby.runtime.Block unusedBlock
        end local 1 // org.jruby.runtime.builtin.IRubyObject object
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     1       object  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     2  unusedBlock  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
             Name  Flags
      recv         
      object       
      unusedBlock  

  public static org.jruby.runtime.builtin.IRubyObject primitive_to_java(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
        start local 1 // org.jruby.runtime.builtin.IRubyObject object
        start local 2 // org.jruby.runtime.Block unusedBlock
         0: .line 1472
            aload 1 /* object */
            instanceof org.jruby.javasupport.JavaObject
            ifeq 2
         1: .line 1473
            aload 1 /* object */
            areturn
         2: .line 1475
      StackMap locals:
      StackMap stack:
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         3: .line 1477
            invokestatic org.jruby.javasupport.JavaUtil.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:()[I
            aload 1 /* object */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.getClassIndex:()Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            iaload
            tableswitch { // 5 - 20
                    5: 13
                    6: 4
                    7: 16
                    8: 18
                    9: 22
                   10: 22
                   11: 22
                   12: 11
                   13: 22
                   14: 22
                   15: 22
                   16: 22
                   17: 6
                   18: 22
                   19: 22
                   20: 20
              default: 22
          }
         4: .line 1479
      StackMap locals: org.jruby.Ruby
      StackMap stack:
            aconst_null
            astore 4 /* javaObject */
        start local 4 // java.lang.Object javaObject
         5: .line 1480
            goto 23
        end local 4 // java.lang.Object javaObject
         6: .line 1482
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            instanceof org.jruby.RubyFixnum
            ifeq 9
         7: .line 1483
            aload 1 /* object */
            checkcast org.jruby.RubyFixnum
            invokevirtual org.jruby.RubyFixnum.getLongValue:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            astore 4 /* javaObject */
        start local 4 // java.lang.Object javaObject
         8: .line 1484
            goto 23
        end local 4 // java.lang.Object javaObject
         9: .line 1485
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            checkcast org.jruby.RubyBignum
            invokevirtual org.jruby.RubyBignum.getValue:()Ljava/math/BigInteger;
            astore 4 /* javaObject */
        start local 4 // java.lang.Object javaObject
        10: .line 1487
            goto 23
        end local 4 // java.lang.Object javaObject
        11: .line 1489
      StackMap locals:
      StackMap stack:
            new java.lang.Double
            dup
            aload 1 /* object */
            checkcast org.jruby.RubyFloat
            invokevirtual org.jruby.RubyFloat.getValue:()D
            invokespecial java.lang.Double.<init>:(D)V
            astore 4 /* javaObject */
        start local 4 // java.lang.Object javaObject
        12: .line 1490
            goto 23
        end local 4 // java.lang.Object javaObject
        13: .line 1492
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            checkcast org.jruby.RubyString
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 5 /* bytes */
        start local 5 // org.jruby.util.ByteList bytes
        14: .line 1493
            aload 5 /* bytes */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 5 /* bytes */
            invokevirtual org.jruby.util.ByteList.begin:()I
            aload 5 /* bytes */
            invokevirtual org.jruby.util.ByteList.length:()I
            invokestatic org.jruby.RubyEncoding.decodeUTF8:([BII)Ljava/lang/String;
            astore 4 /* javaObject */
        start local 4 // java.lang.Object javaObject
        15: .line 1494
            goto 23
        end local 5 // org.jruby.util.ByteList bytes
        end local 4 // java.lang.Object javaObject
        16: .line 1496
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
            astore 4 /* javaObject */
        start local 4 // java.lang.Object javaObject
        17: .line 1497
            goto 23
        end local 4 // java.lang.Object javaObject
        18: .line 1499
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            astore 4 /* javaObject */
        start local 4 // java.lang.Object javaObject
        19: .line 1500
            goto 23
        end local 4 // java.lang.Object javaObject
        20: .line 1502
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            checkcast org.jruby.RubyTime
            invokevirtual org.jruby.RubyTime.getJavaDate:()Ljava/util/Date;
            astore 4 /* javaObject */
        start local 4 // java.lang.Object javaObject
        21: .line 1503
            goto 23
        end local 4 // java.lang.Object javaObject
        22: .line 1506
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            areturn
        start local 4 // java.lang.Object javaObject
        23: .line 1510
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 3 /* runtime */
            aload 4 /* javaObject */
            invokestatic org.jruby.javasupport.JavaObject.wrap:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/javasupport/JavaObject;
            areturn
        end local 4 // java.lang.Object javaObject
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.Block unusedBlock
        end local 1 // org.jruby.runtime.builtin.IRubyObject object
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   24     0         recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0   24     1       object  Lorg/jruby/runtime/builtin/IRubyObject;
            0   24     2  unusedBlock  Lorg/jruby/runtime/Block;
            3   24     3      runtime  Lorg/jruby/Ruby;
            5    6     4   javaObject  Ljava/lang/Object;
            8    9     4   javaObject  Ljava/lang/Object;
           10   11     4   javaObject  Ljava/lang/Object;
           12   13     4   javaObject  Ljava/lang/Object;
           15   16     4   javaObject  Ljava/lang/Object;
           17   18     4   javaObject  Ljava/lang/Object;
           19   20     4   javaObject  Ljava/lang/Object;
           21   22     4   javaObject  Ljava/lang/Object;
           23   24     4   javaObject  Ljava/lang/Object;
           14   16     5        bytes  Lorg/jruby/util/ByteList;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
             Name  Flags
      recv         
      object       
      unusedBlock  

  public static  convertArgument(org.jruby.Ruby, , java.lang.Class<?>);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.Object argument
        start local 2 // java.lang.Class parameterType
         0: .line 1515
            aload 1 /* argument */
            ifnonnull 4
         1: .line 1516
            aload 2 /* parameterType */
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifeq 3
         2: .line 1517
            aload 0 /* runtime */
            ldc "primitives do not accept null"
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         3: .line 1519
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
         4: .line 1523
      StackMap locals:
      StackMap stack:
            aload 1 /* argument */
            instanceof org.jruby.javasupport.JavaObject
            ifeq 8
         5: .line 1524
            aload 1 /* argument */
            checkcast org.jruby.javasupport.JavaObject
            invokevirtual org.jruby.javasupport.JavaObject.getValue:()Ljava/lang/Object;
            astore 1 /* argument */
         6: .line 1525
            aload 1 /* argument */
            ifnonnull 8
         7: .line 1526
            aconst_null
            areturn
         8: .line 1529
      StackMap locals:
      StackMap stack:
            aload 2 /* parameterType */
            invokestatic org.jruby.javasupport.JavaUtil.primitiveToWrapper:(Ljava/lang/Class;)Ljava/lang/Class;
            astore 3 /* type */
        start local 3 // java.lang.Class type
         9: .line 1531
            aload 1 /* argument */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 3 /* type */
            if_acmpne 10
            aload 1 /* argument */
            areturn
        10: .line 1533
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 3 /* type */
            ldc Ljava/lang/Void;
            if_acmpne 12
        11: .line 1534
            aconst_null
            areturn
        12: .line 1537
      StackMap locals:
      StackMap stack:
            aload 1 /* argument */
            instanceof java.lang.Number
            ifeq 28
        13: .line 1538
            aload 1 /* argument */
            checkcast java.lang.Number
            astore 4 /* number */
        start local 4 // java.lang.Number number
        14: .line 1539
            aload 3 /* type */
            ldc Ljava/lang/Long;
            if_acmpne 16
        15: .line 1540
            aload 4 /* number */
            invokevirtual java.lang.Number.longValue:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            areturn
        16: .line 1541
      StackMap locals: java.lang.Number
      StackMap stack:
            aload 3 /* type */
            ldc Ljava/lang/Integer;
            if_acmpne 18
        17: .line 1542
            aload 4 /* number */
            invokevirtual java.lang.Number.intValue:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            areturn
        18: .line 1543
      StackMap locals:
      StackMap stack:
            aload 3 /* type */
            ldc Ljava/lang/Byte;
            if_acmpne 20
        19: .line 1544
            aload 4 /* number */
            invokevirtual java.lang.Number.byteValue:()B
            invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
            areturn
        20: .line 1545
      StackMap locals:
      StackMap stack:
            aload 3 /* type */
            ldc Ljava/lang/Character;
            if_acmpne 22
        21: .line 1546
            aload 4 /* number */
            invokevirtual java.lang.Number.intValue:()I
            i2c
            invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
            areturn
        22: .line 1547
      StackMap locals:
      StackMap stack:
            aload 3 /* type */
            ldc Ljava/lang/Double;
            if_acmpne 24
        23: .line 1548
            aload 4 /* number */
            invokevirtual java.lang.Number.doubleValue:()D
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            areturn
        24: .line 1549
      StackMap locals:
      StackMap stack:
            aload 3 /* type */
            ldc Ljava/lang/Float;
            if_acmpne 26
        25: .line 1550
            aload 4 /* number */
            invokevirtual java.lang.Number.floatValue:()F
            invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
            areturn
        26: .line 1551
      StackMap locals:
      StackMap stack:
            aload 3 /* type */
            ldc Ljava/lang/Short;
            if_acmpne 28
        27: .line 1552
            aload 4 /* number */
            invokevirtual java.lang.Number.shortValue:()S
            invokestatic java.lang.Short.valueOf:(S)Ljava/lang/Short;
            areturn
        end local 4 // java.lang.Number number
        28: .line 1555
      StackMap locals:
      StackMap stack:
            aload 1 /* argument */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 2 /* parameterType */
            invokestatic org.jruby.javasupport.JavaUtil.isDuckTypeConvertable:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifeq 32
        29: .line 1556
            aload 1 /* argument */
            checkcast org.jruby.RubyObject
            astore 4 /* rubyObject */
        start local 4 // org.jruby.RubyObject rubyObject
        30: .line 1557
            aload 4 /* rubyObject */
            ldc "java_object"
            invokevirtual org.jruby.RubyObject.respondsTo:(Ljava/lang/String;)Z
            ifne 32
        31: .line 1558
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 4 /* rubyObject */
            aload 2 /* parameterType */
            invokestatic org.jruby.javasupport.JavaUtil.convertProcToInterface:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyObject;Ljava/lang/Class;)Ljava/lang/Object;
            areturn
        end local 4 // org.jruby.RubyObject rubyObject
        32: .line 1561
      StackMap locals:
      StackMap stack:
            aload 1 /* argument */
            areturn
        end local 3 // java.lang.Class type
        end local 2 // java.lang.Class parameterType
        end local 1 // java.lang.Object argument
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   33     0        runtime  Lorg/jruby/Ruby;
            0   33     1       argument  Ljava/lang/Object;
            0   33     2  parameterType  Ljava/lang/Class<*>;
            9   33     3           type  Ljava/lang/Class<*>;
           14   28     4         number  Ljava/lang/Number;
           30   32     4     rubyObject  Lorg/jruby/RubyObject;
    Signature: (Lorg/jruby/Ruby;Ljava/lang/Object;Ljava/lang/Class<*>;)Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
               Name  Flags
      runtime        
      argument       
      parameterType  

  public static org.jruby.runtime.builtin.IRubyObject java_to_ruby(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.runtime.builtin.IRubyObject object
         0: .line 1569
            aload 1 /* object */
            instanceof org.jruby.javasupport.JavaObject
            ifeq 2
         1: .line 1570
            aload 0 /* runtime */
            aload 1 /* object */
            checkcast org.jruby.javasupport.JavaObject
            invokevirtual org.jruby.javasupport.JavaObject.getValue:()Ljava/lang/Object;
            invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObject:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 1572
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject object
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  runtime  Lorg/jruby/Ruby;
            0    3     1   object  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      runtime  
      object   

  public static java.lang.Object coerceStringToType(org.jruby.RubyString, java.lang.Class);
    descriptor: (Lorg/jruby/RubyString;Ljava/lang/Class;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.jruby.RubyString string
        start local 1 // java.lang.Class target
         0: .line 1579
            aload 0 /* string */
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 2 /* bytes */
        start local 2 // org.jruby.util.ByteList bytes
         1: .line 1583
            new java.lang.String
            dup
            aload 2 /* bytes */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 2 /* bytes */
            invokevirtual org.jruby.util.ByteList.begin:()I
            aload 2 /* bytes */
            invokevirtual org.jruby.util.ByteList.length:()I
            aload 0 /* string */
            invokevirtual org.jruby.RubyString.getEncoding:()Lorg/jcodings/Encoding;
            invokevirtual org.jcodings.Encoding.toString:()Ljava/lang/String;
            invokespecial java.lang.String.<init>:([BIILjava/lang/String;)V
         2: areturn
        end local 2 // org.jruby.util.ByteList bytes
         3: .line 1584
      StackMap locals:
      StackMap stack: java.io.UnsupportedEncodingException
            pop
         4: .line 1585
            aload 0 /* string */
            invokevirtual org.jruby.RubyString.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.Class target
        end local 0 // org.jruby.RubyString string
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0  string  Lorg/jruby/RubyString;
            0    5     1  target  Ljava/lang/Class;
            1    3     2   bytes  Lorg/jruby/util/ByteList;
      Exception table:
        from    to  target  type
           0     2       3  Class java.io.UnsupportedEncodingException
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
        Name  Flags
      string  
      target  

  public static java.lang.Object coerceOtherToType(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.Class);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Class;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg
        start local 2 // java.lang.Class target
         0: .line 1591
            aload 1 /* arg */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 2 /* target */
            invokestatic org.jruby.javasupport.JavaUtil.isDuckTypeConvertable:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifeq 4
         1: .line 1592
            aload 1 /* arg */
            checkcast org.jruby.RubyObject
            astore 3 /* rubyObject */
        start local 3 // org.jruby.RubyObject rubyObject
         2: .line 1593
            aload 3 /* rubyObject */
            ldc "java_object"
            invokevirtual org.jruby.RubyObject.respondsTo:(Ljava/lang/String;)Z
            ifne 4
         3: .line 1594
            aload 0 /* context */
            aload 3 /* rubyObject */
            aload 2 /* target */
            invokestatic org.jruby.javasupport.JavaUtil.convertProcToInterface:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyObject;Ljava/lang/Class;)Ljava/lang/Object;
            areturn
        end local 3 // org.jruby.RubyObject rubyObject
         4: .line 1600
      StackMap locals:
      StackMap stack:
            aload 1 /* arg */
            areturn
        end local 2 // java.lang.Class target
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg
        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         arg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     2      target  Ljava/lang/Class;
            2    4     3  rubyObject  Lorg/jruby/RubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      arg      
      target   

  public static java.lang.Object coerceJavaObjectToType(org.jruby.runtime.ThreadContext, java.lang.Object, java.lang.Class);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.Object javaObject
        start local 2 // java.lang.Class target
         0: .line 1605
            aload 1 /* javaObject */
            ifnull 5
            aload 1 /* javaObject */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 2 /* target */
            invokestatic org.jruby.javasupport.JavaUtil.isDuckTypeConvertable:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifeq 5
         1: .line 1606
            aload 1 /* javaObject */
            checkcast org.jruby.RubyObject
            astore 3 /* rubyObject */
        start local 3 // org.jruby.RubyObject rubyObject
         2: .line 1607
            aload 3 /* rubyObject */
            ldc "java_object"
            invokevirtual org.jruby.RubyObject.respondsTo:(Ljava/lang/String;)Z
            ifne 4
         3: .line 1608
            aload 0 /* context */
            aload 3 /* rubyObject */
            aload 2 /* target */
            invokestatic org.jruby.javasupport.JavaUtil.convertProcToInterface:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyObject;Ljava/lang/Class;)Ljava/lang/Object;
            areturn
         4: .line 1612
      StackMap locals: org.jruby.RubyObject
      StackMap stack:
            aload 1 /* javaObject */
            areturn
        end local 3 // org.jruby.RubyObject rubyObject
         5: .line 1614
      StackMap locals:
      StackMap stack:
            aload 1 /* javaObject */
            areturn
        end local 2 // java.lang.Class target
        end local 1 // java.lang.Object javaObject
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0     context  Lorg/jruby/runtime/ThreadContext;
            0    6     1  javaObject  Ljava/lang/Object;
            0    6     2      target  Ljava/lang/Class;
            2    5     3  rubyObject  Lorg/jruby/RubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      context     
      javaObject  
      target      

  public static org.jruby.javasupport.JavaObject unwrapJavaObject(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject, java.lang.String);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Lorg/jruby/javasupport/JavaObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.runtime.builtin.IRubyObject convertee
        start local 2 // java.lang.String errorMessage
         0: .line 1620
            aload 1 /* convertee */
            astore 3 /* obj */
        start local 3 // org.jruby.runtime.builtin.IRubyObject obj
         1: .line 1621
            aload 3 /* obj */
            instanceof org.jruby.javasupport.JavaObject
            ifne 6
         2: .line 1622
            aload 3 /* obj */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.dataGetStruct:()Ljava/lang/Object;
            ifnull 5
            aload 3 /* obj */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.dataGetStruct:()Ljava/lang/Object;
            instanceof org.jruby.javasupport.JavaObject
            ifeq 5
         3: .line 1623
            aload 3 /* obj */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.dataGetStruct:()Ljava/lang/Object;
            checkcast org.jruby.javasupport.JavaObject
            astore 3 /* obj */
         4: .line 1624
            goto 6
         5: .line 1625
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 0 /* runtime */
            aload 2 /* errorMessage */
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         6: .line 1628
      StackMap locals:
      StackMap stack:
            aload 3 /* obj */
            checkcast org.jruby.javasupport.JavaObject
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject obj
        end local 2 // java.lang.String errorMessage
        end local 1 // org.jruby.runtime.builtin.IRubyObject convertee
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0       runtime  Lorg/jruby/Ruby;
            0    7     1     convertee  Lorg/jruby/runtime/builtin/IRubyObject;
            0    7     2  errorMessage  Ljava/lang/String;
            1    7     3           obj  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
              Name  Flags
      runtime       
      convertee     
      errorMessage  

  static int[] $SWITCH_TABLE$org$jruby$runtime$ClassIndex();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 97
            getstatic org.jruby.javasupport.JavaUtil.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.jruby.runtime.ClassIndex.values:()[Lorg/jruby/runtime/ClassIndex;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.jruby.runtime.ClassIndex.ARRAY:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            iconst_4
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.jruby.runtime.ClassIndex.BASICOBJECT:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 39
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.jruby.runtime.ClassIndex.BIGDECIMAL:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 40
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.jruby.runtime.ClassIndex.BIGNUM:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            iconst_3
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic org.jruby.runtime.ClassIndex.BINDING:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 33
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic org.jruby.runtime.ClassIndex.CLASS:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 14
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic org.jruby.runtime.ClassIndex.COMPLEX:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 21
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic org.jruby.runtime.ClassIndex.CONTINUATION:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 38
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic org.jruby.runtime.ClassIndex.CONVERTER:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 24
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic org.jruby.runtime.ClassIndex.DIR:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 36
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic org.jruby.runtime.ClassIndex.ENCODING:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 23
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic org.jruby.runtime.ClassIndex.EXCEPTION:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 31
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic org.jruby.runtime.ClassIndex.FALSE:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 8
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic org.jruby.runtime.ClassIndex.FILE:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 27
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            getstatic org.jruby.runtime.ClassIndex.FIXNUM:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            iconst_2
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic org.jruby.runtime.ClassIndex.FLOAT:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 12
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            getstatic org.jruby.runtime.ClassIndex.GENERATOR:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 25
            iastore
        51: goto 53
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        52: pop
      StackMap locals:
      StackMap stack:
        53: aload 0
            getstatic org.jruby.runtime.ClassIndex.HASH:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 11
            iastore
        54: goto 56
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        55: pop
      StackMap locals:
      StackMap stack:
        56: aload 0
            getstatic org.jruby.runtime.ClassIndex.INTEGER:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 17
            iastore
        57: goto 59
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        58: pop
      StackMap locals:
      StackMap stack:
        59: aload 0
            getstatic org.jruby.runtime.ClassIndex.IO:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 32
            iastore
        60: goto 62
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        61: pop
      StackMap locals:
      StackMap stack:
        62: aload 0
            getstatic org.jruby.runtime.ClassIndex.MATCHDATA:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 28
            iastore
        63: goto 65
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        64: pop
      StackMap locals:
      StackMap stack:
        65: aload 0
            getstatic org.jruby.runtime.ClassIndex.MAX_CLASSES:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 41
            iastore
        66: goto 68
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        67: pop
      StackMap locals:
      StackMap stack:
        68: aload 0
            getstatic org.jruby.runtime.ClassIndex.METHOD:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 35
            iastore
        69: goto 71
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        70: pop
      StackMap locals:
      StackMap stack:
        71: aload 0
            getstatic org.jruby.runtime.ClassIndex.MODULE:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 13
            iastore
        72: goto 74
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        73: pop
      StackMap locals:
      StackMap stack:
        74: aload 0
            getstatic org.jruby.runtime.ClassIndex.NIL:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 6
            iastore
        75: goto 77
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        76: pop
      StackMap locals:
      StackMap stack:
        77: aload 0
            getstatic org.jruby.runtime.ClassIndex.NO_INDEX:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            iconst_1
            iastore
        78: goto 80
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        79: pop
      StackMap locals:
      StackMap stack:
        80: aload 0
            getstatic org.jruby.runtime.ClassIndex.NUMERIC:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 18
            iastore
        81: goto 83
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        82: pop
      StackMap locals:
      StackMap stack:
        83: aload 0
            getstatic org.jruby.runtime.ClassIndex.OBJECT:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 15
            iastore
        84: goto 86
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        85: pop
      StackMap locals:
      StackMap stack:
        86: aload 0
            getstatic org.jruby.runtime.ClassIndex.PROC:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 34
            iastore
        87: goto 89
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        88: pop
      StackMap locals:
      StackMap stack:
        89: aload 0
            getstatic org.jruby.runtime.ClassIndex.RANGE:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 19
            iastore
        90: goto 92
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        91: pop
      StackMap locals:
      StackMap stack:
        92: aload 0
            getstatic org.jruby.runtime.ClassIndex.RATIONAL:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 22
            iastore
        93: goto 95
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        94: pop
      StackMap locals:
      StackMap stack:
        95: aload 0
            getstatic org.jruby.runtime.ClassIndex.REGEXP:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 10
            iastore
        96: goto 98
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        97: pop
      StackMap locals:
      StackMap stack:
        98: aload 0
            getstatic org.jruby.runtime.ClassIndex.STRING:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            iconst_5
            iastore
        99: goto 101
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       100: pop
      StackMap locals:
      StackMap stack:
       101: aload 0
            getstatic org.jruby.runtime.ClassIndex.STRUCT:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 16
            iastore
       102: goto 104
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       103: pop
      StackMap locals:
      StackMap stack:
       104: aload 0
            getstatic org.jruby.runtime.ClassIndex.SYMBOL:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 9
            iastore
       105: goto 107
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       106: pop
      StackMap locals:
      StackMap stack:
       107: aload 0
            getstatic org.jruby.runtime.ClassIndex.THREAD:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 30
            iastore
       108: goto 110
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       109: pop
      StackMap locals:
      StackMap stack:
       110: aload 0
            getstatic org.jruby.runtime.ClassIndex.THREADGROUP:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 29
            iastore
       111: goto 113
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       112: pop
      StackMap locals:
      StackMap stack:
       113: aload 0
            getstatic org.jruby.runtime.ClassIndex.TIME:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 20
            iastore
       114: goto 116
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       115: pop
      StackMap locals:
      StackMap stack:
       116: aload 0
            getstatic org.jruby.runtime.ClassIndex.TRUE:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 7
            iastore
       117: goto 119
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       118: pop
      StackMap locals:
      StackMap stack:
       119: aload 0
            getstatic org.jruby.runtime.ClassIndex.UNBOUNDMETHOD:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 37
            iastore
       120: goto 122
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       121: pop
      StackMap locals:
      StackMap stack:
       122: aload 0
            getstatic org.jruby.runtime.ClassIndex.YIELDER:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
            bipush 26
            iastore
       123: goto 125
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       124: pop
      StackMap locals:
      StackMap stack:
       125: aload 0
            dup
            putstatic org.jruby.javasupport.JavaUtil.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
          35    36      37  Class java.lang.NoSuchFieldError
          38    39      40  Class java.lang.NoSuchFieldError
          41    42      43  Class java.lang.NoSuchFieldError
          44    45      46  Class java.lang.NoSuchFieldError
          47    48      49  Class java.lang.NoSuchFieldError
          50    51      52  Class java.lang.NoSuchFieldError
          53    54      55  Class java.lang.NoSuchFieldError
          56    57      58  Class java.lang.NoSuchFieldError
          59    60      61  Class java.lang.NoSuchFieldError
          62    63      64  Class java.lang.NoSuchFieldError
          65    66      67  Class java.lang.NoSuchFieldError
          68    69      70  Class java.lang.NoSuchFieldError
          71    72      73  Class java.lang.NoSuchFieldError
          74    75      76  Class java.lang.NoSuchFieldError
          77    78      79  Class java.lang.NoSuchFieldError
          80    81      82  Class java.lang.NoSuchFieldError
          83    84      85  Class java.lang.NoSuchFieldError
          86    87      88  Class java.lang.NoSuchFieldError
          89    90      91  Class java.lang.NoSuchFieldError
          92    93      94  Class java.lang.NoSuchFieldError
          95    96      97  Class java.lang.NoSuchFieldError
          98    99     100  Class java.lang.NoSuchFieldError
         101   102     103  Class java.lang.NoSuchFieldError
         104   105     106  Class java.lang.NoSuchFieldError
         107   108     109  Class java.lang.NoSuchFieldError
         110   111     112  Class java.lang.NoSuchFieldError
         113   114     115  Class java.lang.NoSuchFieldError
         116   117     118  Class java.lang.NoSuchFieldError
         119   120     121  Class java.lang.NoSuchFieldError
         122   123     124  Class java.lang.NoSuchFieldError

  private static java.lang.Byte lambda$0(org.jruby.RubyNumeric, java.lang.Class);
    descriptor: (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Byte;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.jruby.RubyNumeric numeric
        start local 1 // java.lang.Class target
         0: .line 934
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getLongValue:()J
            lstore 2 /* value */
        start local 2 // long value
         1: .line 935
            lload 2 /* value */
            invokestatic org.jruby.javasupport.JavaUtil.isLongByteable:(J)Z
            ifeq 2
            lload 2 /* value */
            l2i
            i2b
            invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
            areturn
         2: .line 936
      StackMap locals: long
      StackMap stack:
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getRuntime:()Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            ldc "too big for byte: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* numeric */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // long value
        end local 1 // java.lang.Class target
        end local 0 // org.jruby.RubyNumeric numeric
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  numeric  Lorg/jruby/RubyNumeric;
            0    3     1   target  Ljava/lang/Class<Ljava/lang/Byte;>;
            1    3     2    value  J

  private static java.lang.Short lambda$1(org.jruby.RubyNumeric, java.lang.Class);
    descriptor: (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Short;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.jruby.RubyNumeric numeric
        start local 1 // java.lang.Class target
         0: .line 939
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getLongValue:()J
            lstore 2 /* value */
        start local 2 // long value
         1: .line 940
            lload 2 /* value */
            invokestatic org.jruby.javasupport.JavaUtil.isLongShortable:(J)Z
            ifeq 2
            lload 2 /* value */
            l2i
            i2s
            invokestatic java.lang.Short.valueOf:(S)Ljava/lang/Short;
            areturn
         2: .line 941
      StackMap locals: long
      StackMap stack:
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getRuntime:()Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            ldc "too big for short: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* numeric */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // long value
        end local 1 // java.lang.Class target
        end local 0 // org.jruby.RubyNumeric numeric
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  numeric  Lorg/jruby/RubyNumeric;
            0    3     1   target  Ljava/lang/Class<Ljava/lang/Short;>;
            1    3     2    value  J

  private static java.lang.Character lambda$2(org.jruby.RubyNumeric, java.lang.Class);
    descriptor: (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Character;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.jruby.RubyNumeric numeric
        start local 1 // java.lang.Class target
         0: .line 944
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getLongValue:()J
            lstore 2 /* value */
        start local 2 // long value
         1: .line 945
            lload 2 /* value */
            invokestatic org.jruby.javasupport.JavaUtil.isLongCharable:(J)Z
            ifeq 2
            lload 2 /* value */
            l2i
            i2c
            invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
            areturn
         2: .line 946
      StackMap locals: long
      StackMap stack:
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getRuntime:()Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            ldc "too big for char: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* numeric */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // long value
        end local 1 // java.lang.Class target
        end local 0 // org.jruby.RubyNumeric numeric
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  numeric  Lorg/jruby/RubyNumeric;
            0    3     1   target  Ljava/lang/Class<Ljava/lang/Character;>;
            1    3     2    value  J

  private static java.lang.Integer lambda$3(org.jruby.RubyNumeric, java.lang.Class);
    descriptor: (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Integer;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.jruby.RubyNumeric numeric
        start local 1 // java.lang.Class target
         0: .line 949
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getLongValue:()J
            lstore 2 /* value */
        start local 2 // long value
         1: .line 950
            lload 2 /* value */
            invokestatic org.jruby.javasupport.JavaUtil.isLongIntable:(J)Z
            ifeq 2
            lload 2 /* value */
            l2i
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            areturn
         2: .line 951
      StackMap locals: long
      StackMap stack:
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getRuntime:()Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            ldc "too big for int: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* numeric */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // long value
        end local 1 // java.lang.Class target
        end local 0 // org.jruby.RubyNumeric numeric
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  numeric  Lorg/jruby/RubyNumeric;
            0    3     1   target  Ljava/lang/Class<Ljava/lang/Integer;>;
            1    3     2    value  J

  private static java.lang.Long lambda$4(org.jruby.RubyNumeric, java.lang.Class);
    descriptor: (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Long;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyNumeric numeric
        start local 1 // java.lang.Class target
         0: .line 953
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getLongValue:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            areturn
        end local 1 // java.lang.Class target
        end local 0 // org.jruby.RubyNumeric numeric
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  numeric  Lorg/jruby/RubyNumeric;
            0    1     1   target  Ljava/lang/Class<Ljava/lang/Long;>;

  private static java.lang.Float lambda$5(org.jruby.RubyNumeric, java.lang.Class);
    descriptor: (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Float;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.jruby.RubyNumeric numeric
        start local 1 // java.lang.Class target
         0: .line 955
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
            dstore 2 /* value */
        start local 2 // double value
         1: .line 957
            dload 2 /* value */
            invokestatic org.jruby.javasupport.JavaUtil.isDoubleFloatable:(D)Z
            ifeq 2
            dload 2 /* value */
            d2f
            invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
            areturn
         2: .line 958
      StackMap locals: double
      StackMap stack:
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getRuntime:()Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            ldc "too big for float: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* numeric */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // double value
        end local 1 // java.lang.Class target
        end local 0 // org.jruby.RubyNumeric numeric
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  numeric  Lorg/jruby/RubyNumeric;
            0    3     1   target  Ljava/lang/Class<Ljava/lang/Float;>;
            1    3     2    value  D

  private static java.lang.Double lambda$6(org.jruby.RubyNumeric, java.lang.Class);
    descriptor: (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Double;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyNumeric numeric
        start local 1 // java.lang.Class target
         0: .line 960
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            areturn
        end local 1 // java.lang.Class target
        end local 0 // org.jruby.RubyNumeric numeric
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  numeric  Lorg/jruby/RubyNumeric;
            0    1     1   target  Ljava/lang/Class<Ljava/lang/Double;>;

  private static java.math.BigInteger lambda$7(org.jruby.RubyNumeric, java.lang.Class);
    descriptor: (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/math/BigInteger;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.jruby.RubyNumeric numeric
        start local 1 // java.lang.Class target
         0: .line 961
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getBigIntegerValue:()Ljava/math/BigInteger;
            areturn
        end local 1 // java.lang.Class target
        end local 0 // org.jruby.RubyNumeric numeric
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  numeric  Lorg/jruby/RubyNumeric;
            0    1     1   target  Ljava/lang/Class<Ljava/math/BigInteger;>;

  private static java.lang.Object lambda$8(org.jruby.RubyNumeric, java.lang.Class);
    descriptor: (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.RubyNumeric numeric
        start local 1 // java.lang.Class target
         0: .line 964
            aload 1 /* target */
            aload 0 /* numeric */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 2
         1: .line 966
            aload 0 /* numeric */
            areturn
         2: .line 969
      StackMap locals:
      StackMap stack:
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getRuntime:()Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            ldc "could not coerce "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getMetaClass:()Lorg/jruby/RubyClass;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " to "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* target */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 1 // java.lang.Class target
        end local 0 // org.jruby.RubyNumeric numeric
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  numeric  Lorg/jruby/RubyNumeric;
            0    3     1   target  Ljava/lang/Class;

  private static java.lang.Object lambda$9(org.jruby.RubyNumeric, java.lang.Class);
    descriptor: (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.jruby.RubyNumeric numeric
        start local 1 // java.lang.Class target
         0: .line 973
            aload 0 /* numeric */
            instanceof org.jruby.RubyFixnum
            ifeq 3
         1: .line 974
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getLongValue:()J
            lstore 2 /* value */
        start local 2 // long value
         2: .line 975
            lload 2 /* value */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            areturn
        end local 2 // long value
         3: .line 976
      StackMap locals:
      StackMap stack:
            aload 0 /* numeric */
            instanceof org.jruby.RubyFloat
            ifeq 6
         4: .line 977
            aload 0 /* numeric */
            invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
            dstore 2 /* value */
        start local 2 // double value
         5: .line 978
            dload 2 /* value */
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            areturn
        end local 2 // double value
         6: .line 979
      StackMap locals:
      StackMap stack:
            aload 0 /* numeric */
            instanceof org.jruby.RubyBignum
            ifeq 8
         7: .line 980
            aload 0 /* numeric */
            checkcast org.jruby.RubyBignum
            invokevirtual org.jruby.RubyBignum.getValue:()Ljava/math/BigInteger;
            areturn
         8: .line 981
      StackMap locals:
      StackMap stack:
            aload 0 /* numeric */
            instanceof org.jruby.ext.bigdecimal.RubyBigDecimal
            ifeq 10
         9: .line 982
            aload 0 /* numeric */
            checkcast org.jruby.ext.bigdecimal.RubyBigDecimal
            invokevirtual org.jruby.ext.bigdecimal.RubyBigDecimal.getValue:()Ljava/math/BigDecimal;
            areturn
        10: .line 984
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.javasupport.JavaUtil.NUMERIC_TO_OTHER:Lorg/jruby/javasupport/JavaUtil$NumericConverter;
            aload 0 /* numeric */
            aload 1 /* target */
            invokeinterface org.jruby.javasupport.JavaUtil$NumericConverter.coerce:(Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.Class target
        end local 0 // org.jruby.RubyNumeric numeric
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0  numeric  Lorg/jruby/RubyNumeric;
            0   11     1   target  Ljava/lang/Class<Ljava/lang/Object;>;
            2    3     2    value  J
            5    6     2    value  D

  private static java.lang.Object lambda$10(org.jruby.RubyNumeric, java.lang.Class);
    descriptor: (Lorg/jruby/RubyNumeric;Ljava/lang/Class;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.jruby.RubyNumeric numeric
        start local 1 // java.lang.Class target
         0: .line 987
            aconst_null
            areturn
        end local 1 // java.lang.Class target
        end local 0 // org.jruby.RubyNumeric numeric
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  numeric  Lorg/jruby/RubyNumeric;
            0    1     1   target  Ljava/lang/Class;
}
SourceFile: "JavaUtil.java"
NestMembers:
  org.jruby.javasupport.JavaUtil$1  org.jruby.javasupport.JavaUtil$10  org.jruby.javasupport.JavaUtil$11  org.jruby.javasupport.JavaUtil$12  org.jruby.javasupport.JavaUtil$13  org.jruby.javasupport.JavaUtil$14  org.jruby.javasupport.JavaUtil$15  org.jruby.javasupport.JavaUtil$16  org.jruby.javasupport.JavaUtil$17  org.jruby.javasupport.JavaUtil$18  org.jruby.javasupport.JavaUtil$19  org.jruby.javasupport.JavaUtil$2  org.jruby.javasupport.JavaUtil$20  org.jruby.javasupport.JavaUtil$21  org.jruby.javasupport.JavaUtil$22  org.jruby.javasupport.JavaUtil$23  org.jruby.javasupport.JavaUtil$24  org.jruby.javasupport.JavaUtil$25  org.jruby.javasupport.JavaUtil$26  org.jruby.javasupport.JavaUtil$27  org.jruby.javasupport.JavaUtil$28  org.jruby.javasupport.JavaUtil$29  org.jruby.javasupport.JavaUtil$3  org.jruby.javasupport.JavaUtil$30  org.jruby.javasupport.JavaUtil$31  org.jruby.javasupport.JavaUtil$32  org.jruby.javasupport.JavaUtil$33  org.jruby.javasupport.JavaUtil$34  org.jruby.javasupport.JavaUtil$35  org.jruby.javasupport.JavaUtil$36  org.jruby.javasupport.JavaUtil$37  org.jruby.javasupport.JavaUtil$38  org.jruby.javasupport.JavaUtil$39  org.jruby.javasupport.JavaUtil$4  org.jruby.javasupport.JavaUtil$40  org.jruby.javasupport.JavaUtil$41  org.jruby.javasupport.JavaUtil$5  org.jruby.javasupport.JavaUtil$6  org.jruby.javasupport.JavaUtil$7  org.jruby.javasupport.JavaUtil$8  org.jruby.javasupport.JavaUtil$9  org.jruby.javasupport.JavaUtil$JavaConverter  org.jruby.javasupport.JavaUtil$NumericConverter  org.jruby.javasupport.JavaUtil$RubyConverter  org.jruby.javasupport.JavaUtil$StringConverter
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  final ProcToInterface = org.jruby.javasupport.Java$ProcToInterface of org.jruby.javasupport.Java
  final ConcreteMethod = org.jruby.javasupport.Java$ProcToInterface$ConcreteMethod of org.jruby.javasupport.Java$ProcToInterface
  org.jruby.javasupport.JavaUtil$1
  org.jruby.javasupport.JavaUtil$10
  org.jruby.javasupport.JavaUtil$11
  org.jruby.javasupport.JavaUtil$12
  org.jruby.javasupport.JavaUtil$13
  org.jruby.javasupport.JavaUtil$14
  org.jruby.javasupport.JavaUtil$15
  org.jruby.javasupport.JavaUtil$16
  org.jruby.javasupport.JavaUtil$17
  org.jruby.javasupport.JavaUtil$18
  org.jruby.javasupport.JavaUtil$19
  org.jruby.javasupport.JavaUtil$2
  org.jruby.javasupport.JavaUtil$20
  org.jruby.javasupport.JavaUtil$21
  org.jruby.javasupport.JavaUtil$22
  org.jruby.javasupport.JavaUtil$23
  org.jruby.javasupport.JavaUtil$24
  org.jruby.javasupport.JavaUtil$25
  org.jruby.javasupport.JavaUtil$26
  org.jruby.javasupport.JavaUtil$27
  org.jruby.javasupport.JavaUtil$28
  org.jruby.javasupport.JavaUtil$29
  org.jruby.javasupport.JavaUtil$3
  org.jruby.javasupport.JavaUtil$30
  org.jruby.javasupport.JavaUtil$31
  org.jruby.javasupport.JavaUtil$32
  org.jruby.javasupport.JavaUtil$33
  org.jruby.javasupport.JavaUtil$34
  org.jruby.javasupport.JavaUtil$35
  org.jruby.javasupport.JavaUtil$36
  org.jruby.javasupport.JavaUtil$37
  org.jruby.javasupport.JavaUtil$38
  org.jruby.javasupport.JavaUtil$39
  org.jruby.javasupport.JavaUtil$4
  org.jruby.javasupport.JavaUtil$40
  org.jruby.javasupport.JavaUtil$41
  org.jruby.javasupport.JavaUtil$5
  org.jruby.javasupport.JavaUtil$6
  org.jruby.javasupport.JavaUtil$7
  org.jruby.javasupport.JavaUtil$8
  org.jruby.javasupport.JavaUtil$9
  public abstract JavaConverter = org.jruby.javasupport.JavaUtil$JavaConverter of org.jruby.javasupport.JavaUtil
  public abstract NumericConverter = org.jruby.javasupport.JavaUtil$NumericConverter of org.jruby.javasupport.JavaUtil
  public abstract RubyConverter = org.jruby.javasupport.JavaUtil$RubyConverter of org.jruby.javasupport.JavaUtil
  public StringConverter = org.jruby.javasupport.JavaUtil$StringConverter of org.jruby.javasupport.JavaUtil