public class org.jruby.javasupport.JavaPackage extends org.jruby.RubyModule
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.javasupport.JavaPackage
  super_class: org.jruby.RubyModule
{
  final java.lang.String packageName;
    descriptor: Ljava/lang/String;
    flags: (0x0010) ACC_FINAL

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 59
            ldc Lorg/jruby/javasupport/JavaPackage;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.jruby.javasupport.JavaPackage.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static org.jruby.RubyModule createJavaPackageClass(org.jruby.Ruby, org.jruby.RubyModule);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyModule;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.RubyModule Java
         0: .line 62
            new org.jruby.javasupport.JavaPackage$BlankSlateWrapper
            dup
            aload 0 /* runtime */
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getModule:()Lorg/jruby/RubyClass;
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getKernel:()Lorg/jruby/RubyModule;
            invokespecial org.jruby.javasupport.JavaPackage$BlankSlateWrapper.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Lorg/jruby/RubyModule;)V
            astore 2 /* superClass */
        start local 2 // org.jruby.RubyClass superClass
         1: .line 63
            aload 0 /* runtime */
            aload 2 /* superClass */
            invokestatic org.jruby.RubyClass.newClass:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)Lorg/jruby/RubyClass;
            astore 3 /* JavaPackage */
        start local 3 // org.jruby.RubyClass JavaPackage
         2: .line 64
            aload 3 /* JavaPackage */
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getModule:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.setMetaClass:(Lorg/jruby/RubyClass;)V
         3: .line 65
            aload 3 /* JavaPackage */
            getstatic org.jruby.runtime.ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
            invokevirtual org.jruby.RubyClass.setAllocator:(Lorg/jruby/runtime/ObjectAllocator;)V
         4: .line 66
            aload 3 /* JavaPackage */
            aload 2 /* superClass */
            invokevirtual org.jruby.RubyClass.makeMetaClass:(Lorg/jruby/RubyClass;)Lorg/jruby/RubyClass;
            checkcast org.jruby.MetaClass
            aload 3 /* JavaPackage */
            invokevirtual org.jruby.MetaClass.setAttached:(Lorg/jruby/RubyBasicObject;)V
         5: .line 68
            aload 3 /* JavaPackage */
            ldc "JavaPackage"
            invokevirtual org.jruby.RubyClass.setBaseName:(Ljava/lang/String;)V
         6: .line 70
            aload 3 /* JavaPackage */
            aload 1 /* Java */
            invokevirtual org.jruby.RubyClass.setParent:(Lorg/jruby/RubyModule;)V
         7: .line 71
            aload 1 /* Java */
            ldc "JavaPackage"
            aload 3 /* JavaPackage */
            invokevirtual org.jruby.RubyModule.setConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         8: .line 74
            aload 3 /* JavaPackage */
            ldc Lorg/jruby/javasupport/JavaPackage;
            invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
         9: .line 75
            aload 3 /* JavaPackage */
            areturn
        end local 3 // org.jruby.RubyClass JavaPackage
        end local 2 // org.jruby.RubyClass superClass
        end local 1 // org.jruby.RubyModule Java
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0      runtime  Lorg/jruby/Ruby;
            0   10     1         Java  Lorg/jruby/RubyModule;
            1   10     2   superClass  Lorg/jruby/RubyClass;
            2   10     3  JavaPackage  Lorg/jruby/RubyClass;
    MethodParameters:
         Name  Flags
      runtime  final
      Java     final

  static org.jruby.RubyModule newPackage(org.jruby.Ruby, java.lang.CharSequence, org.jruby.RubyModule);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/CharSequence;Lorg/jruby/RubyModule;)Lorg/jruby/RubyModule;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.CharSequence name
        start local 2 // org.jruby.RubyModule parent
         0: .line 79
            new org.jruby.javasupport.JavaPackage
            dup
            aload 0 /* runtime */
            aload 1 /* name */
            invokespecial org.jruby.javasupport.JavaPackage.<init>:(Lorg/jruby/Ruby;Ljava/lang/CharSequence;)V
            astore 3 /* pkgModule */
        start local 3 // org.jruby.javasupport.JavaPackage pkgModule
         1: .line 84
            aload 3 /* pkgModule */
            getstatic org.jruby.javasupport.JavaPackage$JavaClassProvider.INSTANCE:Lorg/jruby/javasupport/JavaPackage$JavaClassProvider;
            invokevirtual org.jruby.javasupport.JavaPackage.addClassProvider:(Lorg/jruby/util/ClassProvider;)V
         2: .line 85
            aload 3 /* pkgModule */
            areturn
        end local 3 // org.jruby.javasupport.JavaPackage pkgModule
        end local 2 // org.jruby.RubyModule parent
        end local 1 // java.lang.CharSequence name
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0    runtime  Lorg/jruby/Ruby;
            0    3     1       name  Ljava/lang/CharSequence;
            0    3     2     parent  Lorg/jruby/RubyModule;
            1    3     3  pkgModule  Lorg/jruby/javasupport/JavaPackage;
    MethodParameters:
         Name  Flags
      runtime  
      name     
      parent   

  static java.lang.CharSequence buildPackageName(org.jruby.RubyModule, java.lang.String);
    descriptor: (Lorg/jruby/RubyModule;Ljava/lang/String;)Ljava/lang/CharSequence;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyModule parentPackage
        start local 1 // java.lang.String name
         0: .line 89
            aload 0 /* parentPackage */
            checkcast org.jruby.javasupport.JavaPackage
            aload 1 /* name */
            invokevirtual org.jruby.javasupport.JavaPackage.packageRelativeName:(Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.jruby.RubyModule parentPackage
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0  parentPackage  Lorg/jruby/RubyModule;
            0    1     1           name  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      parentPackage  final
      name           final

  private void <init>(org.jruby.Ruby, java.lang.CharSequence);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/CharSequence;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // java.lang.CharSequence packageName
         0: .line 95
            aload 0 /* this */
            aload 1 /* runtime */
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getJavaSupport:()Lorg/jruby/javasupport/JavaSupport;
            invokevirtual org.jruby.javasupport.JavaSupport.getJavaPackageClass:()Lorg/jruby/RubyClass;
            invokespecial org.jruby.RubyModule.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
         1: .line 96
            aload 0 /* this */
            aload 2 /* packageName */
            invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
            putfield org.jruby.javasupport.JavaPackage.packageName:Ljava/lang/String;
         2: .line 97
            return
        end local 2 // java.lang.CharSequence packageName
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lorg/jruby/javasupport/JavaPackage;
            0    3     1      runtime  Lorg/jruby/Ruby;
            0    3     2  packageName  Ljava/lang/CharSequence;
    MethodParameters:
             Name  Flags
      runtime      final
      packageName  final

  public org.jruby.RubyString package_name();
    descriptor: ()Lorg/jruby/RubyString;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.javasupport.JavaPackage this
         0: .line 103
            aload 0 /* this */
            invokevirtual org.jruby.javasupport.JavaPackage.getRuntime:()Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.javasupport.JavaPackage.packageName:Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            areturn
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/javasupport/JavaPackage;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"package_name"}, alias = {"to_s"})

  public org.jruby.RubyString to_s();
    descriptor: ()Lorg/jruby/RubyString;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.javasupport.JavaPackage this
         0: .line 107
            aload 0 /* this */
            invokevirtual org.jruby.javasupport.JavaPackage.package_name:()Lorg/jruby/RubyString;
            areturn
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/javasupport/JavaPackage;

  public org.jruby.runtime.builtin.IRubyObject inspect();
    descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.javasupport.JavaPackage this
         0: .line 112
            aload 0 /* this */
            invokevirtual org.jruby.javasupport.JavaPackage.getRuntime:()Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.javasupport.JavaPackage.getName:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            areturn
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/javasupport/JavaPackage;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()

  public org.jruby.RubyBoolean op_eqq(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyBoolean;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 119
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* obj */
            aload 0 /* this */
            if_acmpeq 1
            aload 0 /* this */
            aload 2 /* obj */
            invokevirtual org.jruby.javasupport.JavaPackage.isInstance:(Lorg/jruby/runtime/builtin/IRubyObject;)Z
            ifne 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack: org.jruby.Ruby
         1: iconst_1
      StackMap locals: org.jruby.javasupport.JavaPackage org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject
      StackMap stack: org.jruby.Ruby int
         2: invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/javasupport/JavaPackage;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"==="})
    MethodParameters:
         Name  Flags
      context  
      obj      

  public org.jruby.runtime.builtin.IRubyObject const_missing(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject name
         0: .line 124
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* name */
            iconst_0
            invokevirtual org.jruby.javasupport.JavaPackage.relativeJavaClassOrPackage:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyModule;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject name
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/javasupport/JavaPackage;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2     name  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"const_missing"}, required = 1)
    MethodParameters:
         Name  Flags
      context  final
      name     final

  public final org.jruby.runtime.builtin.IRubyObject const_get(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject name
         0: .line 130
            aload 0 /* this */
            aload 2 /* name */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            iconst_0
            iconst_0
            invokevirtual org.jruby.javasupport.JavaPackage.getConstantNoConstMissing:(Ljava/lang/String;ZZ)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* constant */
        start local 3 // org.jruby.runtime.builtin.IRubyObject constant
         1: .line 131
            aload 3 /* constant */
            ifnull 2
            aload 3 /* constant */
            areturn
         2: .line 132
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* name */
            iconst_0
            invokevirtual org.jruby.javasupport.JavaPackage.relativeJavaClassOrPackage:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyModule;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject constant
        end local 2 // org.jruby.runtime.builtin.IRubyObject name
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/jruby/javasupport/JavaPackage;
            0    3     1   context  Lorg/jruby/runtime/ThreadContext;
            0    3     2      name  Lorg/jruby/runtime/builtin/IRubyObject;
            1    3     3  constant  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"const_get"}, required = 1)
    MethodParameters:
         Name  Flags
      context  final
      name     final

  public final org.jruby.runtime.builtin.IRubyObject const_get(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject name
        start local 3 // org.jruby.runtime.builtin.IRubyObject inherit
         0: .line 138
            aload 0 /* this */
            aload 2 /* name */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            aload 3 /* inherit */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            iconst_0
            invokevirtual org.jruby.javasupport.JavaPackage.getConstantNoConstMissing:(Ljava/lang/String;ZZ)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 4 /* constant */
        start local 4 // org.jruby.runtime.builtin.IRubyObject constant
         1: .line 139
            aload 4 /* constant */
            ifnull 2
            aload 4 /* constant */
            areturn
         2: .line 140
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* name */
            iconst_0
            invokevirtual org.jruby.javasupport.JavaPackage.relativeJavaClassOrPackage:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyModule;
            areturn
        end local 4 // org.jruby.runtime.builtin.IRubyObject constant
        end local 3 // org.jruby.runtime.builtin.IRubyObject inherit
        end local 2 // org.jruby.runtime.builtin.IRubyObject name
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/jruby/javasupport/JavaPackage;
            0    3     1   context  Lorg/jruby/runtime/ThreadContext;
            0    3     2      name  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     3   inherit  Lorg/jruby/runtime/builtin/IRubyObject;
            1    3     4  constant  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"const_get"}, required = 2)
    MethodParameters:
         Name  Flags
      context  final
      name     final
      inherit  final

  public final org.jruby.runtime.builtin.IRubyObject storeConstant(java.lang.String, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // java.lang.String name
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 146
            getstatic org.jruby.javasupport.JavaPackage.$assertionsDisabled:Z
            ifne 1
            aload 2 /* value */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            ldc "value is null"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 148
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.javasupport.JavaPackage.ensureConstantsSettable:()V
         2: .line 149
            aload 0 /* this */
            aload 1 /* name */
            aload 2 /* value */
            invokevirtual org.jruby.javasupport.JavaPackage.constantTableStore:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // java.lang.String name
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/jruby/javasupport/JavaPackage;
            0    3     1   name  Ljava/lang/String;
            0    3     2  value  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
       Name  Flags
      name   
      value  

  public final boolean hasConstant(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // java.lang.String name
         0: .line 154
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual org.jruby.javasupport.JavaPackage.constantTableContains:(Ljava/lang/String;)Z
            ireturn
        end local 1 // java.lang.String name
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/javasupport/JavaPackage;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public final org.jruby.runtime.builtin.IRubyObject fetchConstant(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // java.lang.String name
        start local 2 // boolean includePrivate
         0: .line 159
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual org.jruby.javasupport.JavaPackage.constantEntryFetch:(Ljava/lang/String;)Lorg/jruby/RubyModule$ConstantEntry;
            astore 3 /* entry */
        start local 3 // org.jruby.RubyModule$ConstantEntry entry
         1: .line 160
            aload 3 /* entry */
            ifnonnull 2
            aconst_null
            areturn
         2: .line 161
      StackMap locals: org.jruby.RubyModule$ConstantEntry
      StackMap stack:
            aload 3 /* entry */
            getfield org.jruby.RubyModule$ConstantEntry.hidden:Z
            ifeq 4
            iload 2 /* includePrivate */
            ifne 4
         3: .line 162
            aload 0 /* this */
            invokevirtual org.jruby.javasupport.JavaPackage.getRuntime:()Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            ldc "private constant "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.jruby.javasupport.JavaPackage.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "::"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " referenced"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* name */
            invokevirtual org.jruby.Ruby.newNameError:(Ljava/lang/String;Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         4: .line 164
      StackMap locals:
      StackMap stack:
            aload 3 /* entry */
            getfield org.jruby.RubyModule$ConstantEntry.value:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.RubyModule$ConstantEntry entry
        end local 2 // boolean includePrivate
        end local 1 // java.lang.String name
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Lorg/jruby/javasupport/JavaPackage;
            0    5     1            name  Ljava/lang/String;
            0    5     2  includePrivate  Z
            1    5     3           entry  Lorg/jruby/RubyModule$ConstantEntry;
    MethodParameters:
                Name  Flags
      name            
      includePrivate  

  public final org.jruby.runtime.builtin.IRubyObject deleteConstant(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // java.lang.String name
         0: .line 169
            getstatic org.jruby.javasupport.JavaPackage.$assertionsDisabled:Z
            ifne 1
            aload 1 /* name */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            ldc "name is null"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 170
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.javasupport.JavaPackage.ensureConstantsSettable:()V
         2: .line 171
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual org.jruby.javasupport.JavaPackage.constantTableRemove:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/javasupport/JavaPackage;
            0    3     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  final java.lang.CharSequence packageRelativeName(java.lang.CharSequence);
    descriptor: (Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // java.lang.CharSequence name
         0: .line 175
            aload 0 /* this */
            getfield org.jruby.javasupport.JavaPackage.packageName:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            istore 2 /* length */
        start local 2 // int length
         1: .line 176
            new java.lang.StringBuilder
            dup
            iload 2 /* length */
            iconst_1
            iadd
            aload 1 /* name */
            invokeinterface java.lang.CharSequence.length:()I
            iadd
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 3 /* fullName */
        start local 3 // java.lang.StringBuilder fullName
         2: .line 178
            aload 3 /* fullName */
            aload 0 /* this */
            getfield org.jruby.javasupport.JavaPackage.packageName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 179
            iload 2 /* length */
            ifle 4
            aload 3 /* fullName */
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         4: .line 180
      StackMap locals: int java.lang.StringBuilder
      StackMap stack:
            aload 3 /* fullName */
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            areturn
        end local 3 // java.lang.StringBuilder fullName
        end local 2 // int length
        end local 1 // java.lang.CharSequence name
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/jruby/javasupport/JavaPackage;
            0    5     1      name  Ljava/lang/CharSequence;
            1    5     2    length  I
            2    5     3  fullName  Ljava/lang/StringBuilder;
    MethodParameters:
      Name  Flags
      name  final

  private org.jruby.RubyModule relativeJavaClassOrPackage(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyModule;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject name
        start local 3 // boolean cacheMethod
         0: .line 185
            aload 1 /* context */
            aload 0 /* this */
            aload 2 /* name */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            iload 3 /* cacheMethod */
            invokestatic org.jruby.javasupport.Java.getProxyOrPackageUnderPackage:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyModule;Ljava/lang/String;Z)Lorg/jruby/RubyModule;
            areturn
        end local 3 // boolean cacheMethod
        end local 2 // org.jruby.runtime.builtin.IRubyObject name
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/jruby/javasupport/JavaPackage;
            0    1     1      context  Lorg/jruby/runtime/ThreadContext;
            0    1     2         name  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3  cacheMethod  Z
    MethodParameters:
             Name  Flags
      context      final
      name         final
      cacheMethod  final

  org.jruby.RubyModule relativeJavaProxyClass(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyModule;
    flags: (0x0000) 
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.runtime.builtin.IRubyObject name
         0: .line 189
            aload 0 /* this */
            aload 2 /* name */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual org.jruby.javasupport.JavaPackage.packageRelativeName:(Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
            invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
            astore 3 /* fullName */
        start local 3 // java.lang.String fullName
         1: .line 190
            aload 1 /* runtime */
            aload 3 /* fullName */
            invokestatic org.jruby.javasupport.JavaClass.forNameVerbose:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/javasupport/JavaClass;
            astore 4 /* javaClass */
        start local 4 // org.jruby.javasupport.JavaClass javaClass
         2: .line 191
            aload 1 /* runtime */
            aload 4 /* javaClass */
            invokestatic org.jruby.javasupport.Java.getProxyClass:(Lorg/jruby/Ruby;Lorg/jruby/javasupport/JavaClass;)Lorg/jruby/RubyModule;
            areturn
        end local 4 // org.jruby.javasupport.JavaClass javaClass
        end local 3 // java.lang.String fullName
        end local 2 // org.jruby.runtime.builtin.IRubyObject name
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/jruby/javasupport/JavaPackage;
            0    3     1    runtime  Lorg/jruby/Ruby;
            0    3     2       name  Lorg/jruby/runtime/builtin/IRubyObject;
            1    3     3   fullName  Ljava/lang/String;
            2    3     4  javaClass  Lorg/jruby/javasupport/JavaClass;
    MethodParameters:
         Name  Flags
      runtime  final
      name     final

  public org.jruby.runtime.builtin.IRubyObject respond_to_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject name
         0: .line 196
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* name */
            iconst_0
            invokevirtual org.jruby.javasupport.JavaPackage.respond_to:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject name
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/javasupport/JavaPackage;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2     name  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"respond_to?"})
    MethodParameters:
         Name  Flags
      context  final
      name     

  public org.jruby.runtime.builtin.IRubyObject respond_to_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject name
        start local 3 // org.jruby.runtime.builtin.IRubyObject includePrivate
         0: .line 201
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* name */
            aload 3 /* includePrivate */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            invokevirtual org.jruby.javasupport.JavaPackage.respond_to:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject includePrivate
        end local 2 // org.jruby.runtime.builtin.IRubyObject name
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lorg/jruby/javasupport/JavaPackage;
            0    1     1         context  Lorg/jruby/runtime/ThreadContext;
            0    1     2            name  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3  includePrivate  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"respond_to?"})
    MethodParameters:
                Name  Flags
      context         final
      name            
      includePrivate  

  private org.jruby.runtime.builtin.IRubyObject respond_to(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject mname
        start local 3 // boolean includePrivate
         0: .line 205
            aload 2 /* mname */
            invokestatic org.jruby.util.TypeConverter.checkID:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubySymbol;
            astore 4 /* name */
        start local 4 // org.jruby.RubySymbol name
         1: .line 207
            aload 0 /* this */
            invokevirtual org.jruby.javasupport.JavaPackage.getMetaClass:()Lorg/jruby/RubyClass;
            aload 4 /* name */
            invokevirtual org.jruby.RubySymbol.idString:()Ljava/lang/String;
            iload 3 /* includePrivate */
            ifeq 2
            iconst_0
            goto 3
      StackMap locals: org.jruby.javasupport.JavaPackage org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject int org.jruby.RubySymbol
      StackMap stack: org.jruby.RubyClass java.lang.String
         2: iconst_1
      StackMap locals: org.jruby.javasupport.JavaPackage org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject int org.jruby.RubySymbol
      StackMap stack: org.jruby.RubyClass java.lang.String int
         3: invokevirtual org.jruby.RubyClass.respondsToMethod:(Ljava/lang/String;Z)Z
            ifeq 4
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
            areturn
         4: .line 220
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // org.jruby.RubySymbol name
        end local 3 // boolean includePrivate
        end local 2 // org.jruby.runtime.builtin.IRubyObject mname
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Lorg/jruby/javasupport/JavaPackage;
            0    5     1         context  Lorg/jruby/runtime/ThreadContext;
            0    5     2           mname  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3  includePrivate  Z
            1    5     4            name  Lorg/jruby/RubySymbol;
    MethodParameters:
                Name  Flags
      context         final
      mname           
      includePrivate  final

  private org.jruby.RubyBoolean checkMetaClassBoundMethod(org.jruby.runtime.ThreadContext, java.lang.String, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Z)Lorg/jruby/RubyBoolean;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=4
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // java.lang.String name
        start local 3 // boolean includePrivate
         0: .line 225
            aload 0 /* this */
            invokevirtual org.jruby.javasupport.JavaPackage.getMetaClass:()Lorg/jruby/RubyClass;
            aload 2 /* name */
            invokevirtual org.jruby.RubyClass.searchMethod:(Ljava/lang/String;)Lorg/jruby/internal/runtime/methods/DynamicMethod;
            astore 4 /* method */
        start local 4 // org.jruby.internal.runtime.methods.DynamicMethod method
         1: .line 226
            aload 4 /* method */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.isUndefined:()Z
            ifne 5
            aload 4 /* method */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.isNotImplemented:()Z
            ifne 5
         2: .line 227
            iload 3 /* includePrivate */
            ifne 4
            aload 4 /* method */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getVisibility:()Lorg/jruby/runtime/Visibility;
            getstatic org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;
            if_acmpne 4
         3: .line 228
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
         4: .line 230
      StackMap locals: org.jruby.internal.runtime.methods.DynamicMethod
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.tru:Lorg/jruby/RubyBoolean;
            areturn
         5: .line 232
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 4 // org.jruby.internal.runtime.methods.DynamicMethod method
        end local 3 // boolean includePrivate
        end local 2 // java.lang.String name
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0            this  Lorg/jruby/javasupport/JavaPackage;
            0    6     1         context  Lorg/jruby/runtime/ThreadContext;
            0    6     2            name  Ljava/lang/String;
            0    6     3  includePrivate  Z
            1    6     4          method  Lorg/jruby/internal/runtime/methods/DynamicMethod;
    MethodParameters:
                Name  Flags
      context         final
      name            final
      includePrivate  final

  public org.jruby.runtime.builtin.IRubyObject respond_to_missing_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject name
         0: .line 237
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* name */
            iconst_0
            invokevirtual org.jruby.javasupport.JavaPackage.respond_to_missing:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject name
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/javasupport/JavaPackage;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2     name  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"respond_to_missing?"})
    MethodParameters:
         Name  Flags
      context  final
      name     

  public org.jruby.runtime.builtin.IRubyObject respond_to_missing_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject name
        start local 3 // org.jruby.runtime.builtin.IRubyObject includePrivate
         0: .line 242
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* name */
            aload 3 /* includePrivate */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            invokevirtual org.jruby.javasupport.JavaPackage.respond_to_missing:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject includePrivate
        end local 2 // org.jruby.runtime.builtin.IRubyObject name
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lorg/jruby/javasupport/JavaPackage;
            0    1     1         context  Lorg/jruby/runtime/ThreadContext;
            0    1     2            name  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3  includePrivate  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"respond_to_missing?"})
    MethodParameters:
                Name  Flags
      context         final
      name            
      includePrivate  

  private org.jruby.RubyBoolean respond_to_missing(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyBoolean;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject mname
        start local 3 // boolean includePrivate
         0: .line 246
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* mname */
            invokestatic org.jruby.util.TypeConverter.checkID:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubySymbol;
            invokevirtual org.jruby.RubySymbol.idString:()Ljava/lang/String;
            invokestatic org.jruby.javasupport.JavaPackage$BlankSlateWrapper.handlesMethod:(Ljava/lang/String;)Ljava/lang/String;
            ifnonnull 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack: org.jruby.Ruby
         1: iconst_0
      StackMap locals: org.jruby.javasupport.JavaPackage org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject int
      StackMap stack: org.jruby.Ruby int
         2: invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 3 // boolean includePrivate
        end local 2 // org.jruby.runtime.builtin.IRubyObject mname
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lorg/jruby/javasupport/JavaPackage;
            0    3     1         context  Lorg/jruby/runtime/ThreadContext;
            0    3     2           mname  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     3  includePrivate  Z
    MethodParameters:
                Name  Flags
      context         final
      mname           
      includePrivate  final

  public org.jruby.runtime.builtin.IRubyObject method_missing(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject name
         0: .line 252
            aload 1 /* context */
            aload 0 /* this */
            aload 2 /* name */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            iconst_1
            invokestatic org.jruby.javasupport.Java.getProxyOrPackageUnderPackage:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyModule;Ljava/lang/String;Z)Lorg/jruby/RubyModule;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject name
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/javasupport/JavaPackage;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2     name  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"method_missing"})
    MethodParameters:
         Name  Flags
      context  
      name     final

  public org.jruby.runtime.builtin.IRubyObject method_missing(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 257
            aload 2 /* args */
            arraylength
            iconst_1
            if_icmple 2
         1: .line 258
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            aload 2 /* args */
            iconst_0
            aaload
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            aload 2 /* args */
            arraylength
            iconst_1
            isub
            invokestatic org.jruby.javasupport.JavaPackage.packageMethodArgumentMismatch:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;Ljava/lang/String;I)Lorg/jruby/exceptions/RaiseException;
            athrow
         2: .line 260
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* args */
            iconst_0
            aaload
            invokevirtual org.jruby.javasupport.JavaPackage.method_missing:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/javasupport/JavaPackage;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"method_missing"}, rest = true)
    MethodParameters:
         Name  Flags
      context  
      args     final

  static org.jruby.exceptions.RaiseException packageMethodArgumentMismatch(org.jruby.Ruby, org.jruby.RubyModule, java.lang.String, int);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyModule;Ljava/lang/String;I)Lorg/jruby/exceptions/RaiseException;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.RubyModule pkg
        start local 2 // java.lang.String method
        start local 3 // int argsLength
         0: .line 265
            aload 1 /* pkg */
            checkcast org.jruby.javasupport.JavaPackage
            getfield org.jruby.javasupport.JavaPackage.packageName:Ljava/lang/String;
            astore 4 /* packageName */
        start local 4 // java.lang.String packageName
         1: .line 266
            aload 0 /* runtime */
         2: .line 267
            new java.lang.StringBuilder
            dup
            ldc "Java package '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* packageName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' does not have a method `"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 268
            aload 2 /* method */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' with "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 3 /* argsLength */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            iload 3 /* argsLength */
            iconst_1
            if_icmpne 4
            ldc " argument"
            goto 5
      StackMap locals: org.jruby.Ruby org.jruby.RubyModule java.lang.String int java.lang.String
      StackMap stack: org.jruby.Ruby java.lang.StringBuilder
         4: ldc " arguments"
      StackMap locals: org.jruby.Ruby org.jruby.RubyModule java.lang.String int java.lang.String
      StackMap stack: org.jruby.Ruby java.lang.StringBuilder java.lang.String
         5: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 267
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 266
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            areturn
        end local 4 // java.lang.String packageName
        end local 3 // int argsLength
        end local 2 // java.lang.String method
        end local 1 // org.jruby.RubyModule pkg
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0      runtime  Lorg/jruby/Ruby;
            0    8     1          pkg  Lorg/jruby/RubyModule;
            0    8     2       method  Ljava/lang/String;
            0    8     3   argsLength  I
            1    8     4  packageName  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      runtime     final
      pkg         final
      method      final
      argsLength  final

  public final boolean isAvailable();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.javasupport.JavaPackage this
         0: .line 274
            aload 0 /* this */
            getfield org.jruby.javasupport.JavaPackage.packageName:Ljava/lang/String;
            invokestatic java.lang.Package.getPackage:(Ljava/lang/String;)Ljava/lang/Package;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/javasupport/JavaPackage;

  public org.jruby.runtime.builtin.IRubyObject available_p(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 279
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.javasupport.JavaPackage.isAvailable:()Z
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/javasupport/JavaPackage;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"available?"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject sealed_p(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 284
            aload 0 /* this */
            getfield org.jruby.javasupport.JavaPackage.packageName:Ljava/lang/String;
            invokestatic java.lang.Package.getPackage:(Ljava/lang/String;)Ljava/lang/Package;
            astore 2 /* pkg */
        start local 2 // java.lang.Package pkg
         1: .line 285
            aload 2 /* pkg */
            ifnonnull 2
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 286
      StackMap locals: java.lang.Package
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* pkg */
            invokevirtual java.lang.Package.isSealed:()Z
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 2 // java.lang.Package pkg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/javasupport/JavaPackage;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            1    3     2      pkg  Ljava/lang/Package;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"sealed?"})
    MethodParameters:
         Name  Flags
      context  

  public <T> T toJava(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.javasupport.JavaPackage this
        start local 1 // java.lang.Class target
         0: .line 292
            aload 1 /* target */
            ldc Ljava/lang/Package;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 2
         1: .line 293
            aload 1 /* target */
            aload 0 /* this */
            getfield org.jruby.javasupport.JavaPackage.packageName:Ljava/lang/String;
            invokestatic java.lang.Package.getPackage:(Ljava/lang/String;)Ljava/lang/Package;
            invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
         2: .line 295
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* target */
            invokespecial org.jruby.RubyModule.toJava:(Ljava/lang/Class;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.Class target
        end local 0 // org.jruby.javasupport.JavaPackage this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/jruby/javasupport/JavaPackage;
            0    3     1  target  Ljava/lang/Class<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)TT;
    MethodParameters:
        Name  Flags
      target  

  public org.jruby.runtime.builtin.IRubyObject op_eqq(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            aload 2
            invokevirtual org.jruby.javasupport.JavaPackage.op_eqq:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyBoolean;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public org.jruby.runtime.builtin.IRubyObject to_s();
    descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.jruby.javasupport.JavaPackage.to_s:()Lorg/jruby/RubyString;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "JavaPackage.java"
NestMembers:
  org.jruby.javasupport.JavaPackage$BlankSlateWrapper  org.jruby.javasupport.JavaPackage$BlankSlateWrapper$MethodValue  org.jruby.javasupport.JavaPackage$JavaClassProvider
InnerClasses:
  public ConstantEntry = org.jruby.RubyModule$ConstantEntry of org.jruby.RubyModule
  final BlankSlateWrapper = org.jruby.javasupport.JavaPackage$BlankSlateWrapper of org.jruby.javasupport.JavaPackage
  private JavaClassProvider = org.jruby.javasupport.JavaPackage$JavaClassProvider of org.jruby.javasupport.JavaPackage
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyClass(name = {"Java::JavaPackage"}, parent = "Module")