public class org.jruby.RubyMethod extends org.jruby.AbstractRubyMethod
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.RubyMethod
  super_class: org.jruby.AbstractRubyMethod
{
  protected org.jruby.runtime.builtin.IRubyObject receiver;
    descriptor: Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0004) ACC_PROTECTED

  protected void <init>(org.jruby.Ruby, org.jruby.RubyClass);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.RubyMethod this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.RubyClass rubyClass
         0: .line 69
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* rubyClass */
            invokespecial org.jruby.AbstractRubyMethod.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
         1: .line 70
            return
        end local 2 // org.jruby.RubyClass rubyClass
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/jruby/RubyMethod;
            0    2     1    runtime  Lorg/jruby/Ruby;
            0    2     2  rubyClass  Lorg/jruby/RubyClass;
    MethodParameters:
           Name  Flags
      runtime    
      rubyClass  

  public static org.jruby.RubyClass createMethodClass(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyClass;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.jruby.Ruby runtime
         0: .line 77
            aload 0 /* runtime */
            ldc "Method"
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
            getstatic org.jruby.runtime.ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
            invokevirtual org.jruby.Ruby.defineClass:(Ljava/lang/String;Lorg/jruby/RubyClass;Lorg/jruby/runtime/ObjectAllocator;)Lorg/jruby/RubyClass;
            astore 1 /* methodClass */
        start local 1 // org.jruby.RubyClass methodClass
         1: .line 78
            aload 0 /* runtime */
            aload 1 /* methodClass */
            invokevirtual org.jruby.Ruby.setMethod:(Lorg/jruby/RubyClass;)V
         2: .line 80
            aload 1 /* methodClass */
            getstatic org.jruby.runtime.ClassIndex.METHOD:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.RubyClass.setClassIndex:(Lorg/jruby/runtime/ClassIndex;)V
         3: .line 81
            aload 1 /* methodClass */
            ldc Lorg/jruby/RubyMethod;
            invokevirtual org.jruby.RubyClass.setReifiedClass:(Ljava/lang/Class;)V
         4: .line 83
            aload 1 /* methodClass */
            ldc Lorg/jruby/AbstractRubyMethod;
            invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
         5: .line 84
            aload 1 /* methodClass */
            ldc Lorg/jruby/RubyMethod;
            invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
         6: .line 86
            aload 1 /* methodClass */
            areturn
        end local 1 // org.jruby.RubyClass methodClass
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0      runtime  Lorg/jruby/Ruby;
            1    7     1  methodClass  Lorg/jruby/RubyClass;
    MethodParameters:
         Name  Flags
      runtime  

  public static org.jruby.RubyMethod newMethod(org.jruby.RubyModule, java.lang.String, org.jruby.RubyModule, java.lang.String, org.jruby.runtime.callsite.CacheEntry, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/callsite/CacheEntry;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyMethod;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=8, args_size=6
        start local 0 // org.jruby.RubyModule implementationModule
        start local 1 // java.lang.String methodName
        start local 2 // org.jruby.RubyModule originModule
        start local 3 // java.lang.String originName
        start local 4 // org.jruby.runtime.callsite.CacheEntry entry
        start local 5 // org.jruby.runtime.builtin.IRubyObject receiver
         0: .line 96
            aload 0 /* implementationModule */
            invokevirtual org.jruby.RubyModule.getRuntime:()Lorg/jruby/Ruby;
            astore 6 /* runtime */
        start local 6 // org.jruby.Ruby runtime
         1: .line 97
            new org.jruby.RubyMethod
            dup
            aload 6 /* runtime */
            aload 6 /* runtime */
            invokevirtual org.jruby.Ruby.getMethod:()Lorg/jruby/RubyClass;
            invokespecial org.jruby.RubyMethod.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
            astore 7 /* newMethod */
        start local 7 // org.jruby.RubyMethod newMethod
         2: .line 99
            aload 7 /* newMethod */
            aload 0 /* implementationModule */
            putfield org.jruby.RubyMethod.implementationModule:Lorg/jruby/RubyModule;
         3: .line 100
            aload 7 /* newMethod */
            aload 1 /* methodName */
            putfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
         4: .line 101
            aload 7 /* newMethod */
            aload 2 /* originModule */
            putfield org.jruby.RubyMethod.originModule:Lorg/jruby/RubyModule;
         5: .line 102
            aload 7 /* newMethod */
            aload 3 /* originName */
            putfield org.jruby.RubyMethod.originName:Ljava/lang/String;
         6: .line 103
            aload 7 /* newMethod */
            aload 4 /* entry */
            putfield org.jruby.RubyMethod.entry:Lorg/jruby/runtime/callsite/CacheEntry;
         7: .line 104
            aload 7 /* newMethod */
            aload 4 /* entry */
            getfield org.jruby.runtime.callsite.CacheEntry.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            putfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
         8: .line 105
            aload 7 /* newMethod */
            aload 4 /* entry */
            getfield org.jruby.runtime.callsite.CacheEntry.sourceModule:Lorg/jruby/RubyModule;
            putfield org.jruby.RubyMethod.sourceModule:Lorg/jruby/RubyModule;
         9: .line 106
            aload 7 /* newMethod */
            aload 5 /* receiver */
            putfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
        10: .line 108
            aload 7 /* newMethod */
            areturn
        end local 7 // org.jruby.RubyMethod newMethod
        end local 6 // org.jruby.Ruby runtime
        end local 5 // org.jruby.runtime.builtin.IRubyObject receiver
        end local 4 // org.jruby.runtime.callsite.CacheEntry entry
        end local 3 // java.lang.String originName
        end local 2 // org.jruby.RubyModule originModule
        end local 1 // java.lang.String methodName
        end local 0 // org.jruby.RubyModule implementationModule
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   11     0  implementationModule  Lorg/jruby/RubyModule;
            0   11     1            methodName  Ljava/lang/String;
            0   11     2          originModule  Lorg/jruby/RubyModule;
            0   11     3            originName  Ljava/lang/String;
            0   11     4                 entry  Lorg/jruby/runtime/callsite/CacheEntry;
            0   11     5              receiver  Lorg/jruby/runtime/builtin/IRubyObject;
            1   11     6               runtime  Lorg/jruby/Ruby;
            2   11     7             newMethod  Lorg/jruby/RubyMethod;
    MethodParameters:
                      Name  Flags
      implementationModule  
      methodName            
      originModule          
      originName            
      entry                 
      receiver              

  public org.jruby.runtime.builtin.IRubyObject call(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.jruby.RubyMethod this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 116
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.sourceModule:Lorg/jruby/RubyModule;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
            aload 2 /* block */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyMethod;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"call", "[]"})
    MethodParameters:
         Name  Flags
      context  
      block    

  public org.jruby.runtime.builtin.IRubyObject call(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // org.jruby.RubyMethod this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
        start local 3 // org.jruby.runtime.Block block
         0: .line 120
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.sourceModule:Lorg/jruby/RubyModule;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
            aload 2 /* arg */
            aload 3 /* block */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyMethod;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"call", "[]"})
    MethodParameters:
         Name  Flags
      context  
      arg      
      block    

  public org.jruby.runtime.builtin.IRubyObject call(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=5, args_size=5
        start local 0 // org.jruby.RubyMethod this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 3 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 4 // org.jruby.runtime.Block block
         0: .line 124
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.sourceModule:Lorg/jruby/RubyModule;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
            aload 2 /* arg0 */
            aload 3 /* arg1 */
            aload 4 /* block */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // org.jruby.runtime.Block block
        end local 3 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyMethod;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2     arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3     arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     4    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"call", "[]"})
    MethodParameters:
         Name  Flags
      context  
      arg0     
      arg1     
      block    

  public org.jruby.runtime.builtin.IRubyObject call(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=6, args_size=6
        start local 0 // org.jruby.RubyMethod this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 3 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 4 // org.jruby.runtime.builtin.IRubyObject arg2
        start local 5 // org.jruby.runtime.Block block
         0: .line 128
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.sourceModule:Lorg/jruby/RubyModule;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
            aload 2 /* arg0 */
            aload 3 /* arg1 */
            aload 4 /* arg2 */
            aload 5 /* block */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 5 // org.jruby.runtime.Block block
        end local 4 // org.jruby.runtime.builtin.IRubyObject arg2
        end local 3 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyMethod;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2     arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3     arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     4     arg2  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     5    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"call", "[]"})
    MethodParameters:
         Name  Flags
      context  
      arg0     
      arg1     
      arg2     
      block    

  public org.jruby.runtime.builtin.IRubyObject call(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // org.jruby.RubyMethod this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 3 // org.jruby.runtime.Block block
         0: .line 132
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.sourceModule:Lorg/jruby/RubyModule;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
            aload 2 /* args */
            aload 3 /* block */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyMethod;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"call", "[]"}, rest = true)
    MethodParameters:
         Name  Flags
      context  
      args     
      block    

  public org.jruby.RubyFixnum arity();
    descriptor: ()Lorg/jruby/RubyFixnum;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.jruby.RubyMethod this
         0: .line 142
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            instanceof org.jruby.internal.runtime.methods.IRMethodArgs
            ifeq 3
         1: .line 143
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            checkcast org.jruby.internal.runtime.methods.IRMethodArgs
            invokeinterface org.jruby.internal.runtime.methods.IRMethodArgs.getSignature:()Lorg/jruby/runtime/Signature;
            invokevirtual org.jruby.runtime.Signature.arityValue:()I
            istore 1 /* value */
        start local 1 // int value
         2: .line 144
            goto 4
        end local 1 // int value
         3: .line 145
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getArity:()Lorg/jruby/runtime/Arity;
            invokevirtual org.jruby.runtime.Arity.getValue:()I
            istore 1 /* value */
        start local 1 // int value
         4: .line 148
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.RubyMethod.getRuntime:()Lorg/jruby/Ruby;
            iload 1 /* value */
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            areturn
        end local 1 // int value
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/jruby/RubyMethod;
            2    3     1  value  I
            4    5     1  value  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()

  public org.jruby.runtime.builtin.IRubyObject op_eql(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.RubyMethod this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 153
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* other */
            invokevirtual org.jruby.RubyMethod.op_equal:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyBoolean;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyMethod;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    other  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"eql?"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      other    

  public org.jruby.RubyBoolean op_equal(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.RubyMethod this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 159
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            aload 2 /* other */
            invokevirtual org.jruby.RubyMethod.equals:(Ljava/lang/Object;)Z
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyMethod;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    other  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"=="}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      other    

  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: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.jruby.RubyMethod this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject other
         0: .line 165
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.sourceModule:Lorg/jruby/RubyModule;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
            aload 2 /* other */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject other
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyMethod;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    other  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"==="}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      other    

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.RubyMethod this
        start local 1 // java.lang.Object other
         0: .line 170
            aload 1 /* other */
            instanceof org.jruby.RubyMethod
            ifne 2
         1: .line 171
            iconst_0
            ireturn
         2: .line 173
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            instanceof org.jruby.internal.runtime.methods.ProcMethod
            ifeq 4
         3: .line 174
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            checkcast org.jruby.internal.runtime.methods.ProcMethod
            aload 1 /* other */
            checkcast org.jruby.RubyMethod
            invokevirtual org.jruby.RubyMethod.getMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.ProcMethod.isSame:(Lorg/jruby/internal/runtime/methods/DynamicMethod;)Z
            ireturn
         4: .line 176
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.RubyMethod.getMetaClass:()Lorg/jruby/RubyClass;
            aload 1 /* other */
            checkcast org.jruby.RubyBasicObject
            invokevirtual org.jruby.RubyBasicObject.getMetaClass:()Lorg/jruby/RubyClass;
            if_acmpeq 6
         5: .line 177
            iconst_0
            ireturn
         6: .line 180
      StackMap locals:
      StackMap stack:
            aload 1 /* other */
            checkcast org.jruby.RubyMethod
            astore 2 /* otherMethod */
        start local 2 // org.jruby.RubyMethod otherMethod
         7: .line 181
            aload 0 /* this */
            getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 2 /* otherMethod */
            getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 10
            aload 0 /* this */
            getfield org.jruby.RubyMethod.originModule:Lorg/jruby/RubyModule;
            aload 2 /* otherMethod */
            getfield org.jruby.RubyMethod.originModule:Lorg/jruby/RubyModule;
            if_acmpne 10
         8: .line 182
            aload 0 /* this */
            aload 2 /* otherMethod */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.RubyMethod.isSerialMatch:(Lorg/jruby/internal/runtime/methods/DynamicMethod;)Z
            ifne 9
            aload 0 /* this */
            aload 2 /* otherMethod */
            invokevirtual org.jruby.RubyMethod.getMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.RubyMethod.isMethodMissingMatch:(Lorg/jruby/internal/runtime/methods/DynamicMethod;)Z
            ifeq 10
         9: .line 181
      StackMap locals: org.jruby.RubyMethod
      StackMap stack:
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        10: iconst_0
            ireturn
        end local 2 // org.jruby.RubyMethod otherMethod
        end local 1 // java.lang.Object other
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lorg/jruby/RubyMethod;
            0   11     1        other  Ljava/lang/Object;
            7   11     2  otherMethod  Lorg/jruby/RubyMethod;
    MethodParameters:
       Name  Flags
      other  

  private boolean isMethodMissingMatch(org.jruby.internal.runtime.methods.DynamicMethod);
    descriptor: (Lorg/jruby/internal/runtime/methods/DynamicMethod;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyMethod this
        start local 1 // org.jruby.internal.runtime.methods.DynamicMethod other
         0: .line 186
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
            instanceof org.jruby.RubyModule$RespondToMissingMethod
            ifeq 3
         1: .line 187
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
            checkcast org.jruby.RubyModule$RespondToMissingMethod
            aload 1 /* other */
            invokevirtual org.jruby.RubyModule$RespondToMissingMethod.equals:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 186
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 1 // org.jruby.internal.runtime.methods.DynamicMethod other
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/jruby/RubyMethod;
            0    4     1  other  Lorg/jruby/internal/runtime/methods/DynamicMethod;
    MethodParameters:
       Name  Flags
      other  

  private boolean isSerialMatch(org.jruby.internal.runtime.methods.DynamicMethod);
    descriptor: (Lorg/jruby/internal/runtime/methods/DynamicMethod;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.RubyMethod this
        start local 1 // org.jruby.internal.runtime.methods.DynamicMethod otherMethod
         0: .line 191
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getSerialNumber:()J
            aload 1 /* otherMethod */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getSerialNumber:()J
            lcmp
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // org.jruby.internal.runtime.methods.DynamicMethod otherMethod
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/jruby/RubyMethod;
            0    2     1  otherMethod  Lorg/jruby/internal/runtime/methods/DynamicMethod;
    MethodParameters:
             Name  Flags
      otherMethod  

  public org.jruby.RubyFixnum hash(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyFixnum;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.RubyMethod this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 196
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.RubyMethod.hashCodeImpl:()J
            invokevirtual org.jruby.Ruby.newFixnum:(J)Lorg/jruby/RubyFixnum;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyMethod;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyMethod this
         0: .line 201
            aload 0 /* this */
            invokevirtual org.jruby.RubyMethod.hashCodeImpl:()J
            l2i
            ireturn
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyMethod;

  private long hashCodeImpl();
    descriptor: ()J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.RubyMethod this
         0: .line 205
            aload 0 /* this */
            getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual java.lang.Object.hashCode:()I
            i2l
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getSerialNumber:()J
            lmul
            lreturn
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyMethod;

  public org.jruby.RubyMethod rbClone();
    descriptor: ()Lorg/jruby/RubyMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // org.jruby.RubyMethod this
         0: .line 211
            aload 0 /* this */
            getfield org.jruby.RubyMethod.implementationModule:Lorg/jruby/RubyModule;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.originModule:Lorg/jruby/RubyModule;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.originName:Ljava/lang/String;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.entry:Lorg/jruby/runtime/callsite/CacheEntry;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyMethod.newMethod:(Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/callsite/CacheEntry;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyMethod;
            astore 1 /* newMethod */
        start local 1 // org.jruby.RubyMethod newMethod
         1: .line 212
            aload 1 /* newMethod */
            aload 0 /* this */
            invokevirtual org.jruby.RubyMethod.getMetaClass:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyMethod.setMetaClass:(Lorg/jruby/RubyClass;)V
         2: .line 213
            aload 1 /* newMethod */
            areturn
        end local 1 // org.jruby.RubyMethod newMethod
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/jruby/RubyMethod;
            1    3     1  newMethod  Lorg/jruby/RubyMethod;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"clone"})

  public org.jruby.runtime.builtin.IRubyObject to_proc(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=8, args_size=2
        start local 0 // org.jruby.RubyMethod this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 221
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 226
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            instanceof org.jruby.internal.runtime.methods.IRMethodArgs
            ifeq 5
         2: .line 227
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            checkcast org.jruby.internal.runtime.methods.IRMethodArgs
            invokeinterface org.jruby.internal.runtime.methods.IRMethodArgs.getSignature:()Lorg/jruby/runtime/Signature;
            astore 4 /* signature */
        start local 4 // org.jruby.runtime.Signature signature
         3: .line 228
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            checkcast org.jruby.internal.runtime.methods.IRMethodArgs
            invokeinterface org.jruby.internal.runtime.methods.IRMethodArgs.getArgumentDescriptors:()[Lorg/jruby/runtime/ArgumentDescriptor;
            astore 5 /* argsDesc */
        start local 5 // org.jruby.runtime.ArgumentDescriptor[] argsDesc
         4: .line 229
            goto 7
        end local 5 // org.jruby.runtime.ArgumentDescriptor[] argsDesc
        end local 4 // org.jruby.runtime.Signature signature
         5: .line 230
      StackMap locals: org.jruby.Ruby
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getArity:()Lorg/jruby/runtime/Arity;
            invokestatic org.jruby.runtime.Signature.from:(Lorg/jruby/runtime/Arity;)Lorg/jruby/runtime/Signature;
            astore 4 /* signature */
        start local 4 // org.jruby.runtime.Signature signature
         6: .line 231
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokestatic org.jruby.runtime.Helpers.methodToArgumentDescriptors:(Lorg/jruby/internal/runtime/methods/DynamicMethod;)[Lorg/jruby/runtime/ArgumentDescriptor;
            astore 5 /* argsDesc */
        start local 5 // org.jruby.runtime.ArgumentDescriptor[] argsDesc
         7: .line 234
      StackMap locals: org.jruby.RubyMethod org.jruby.runtime.ThreadContext org.jruby.Ruby top org.jruby.runtime.Signature org.jruby.runtime.ArgumentDescriptor[]
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.RubyMethod.getLine:()I
            istore 6 /* line */
        start local 6 // int line
         8: .line 235
            new org.jruby.runtime.MethodBlockBody
            dup
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getStaticScopeFactory:()Lorg/jruby/parser/StaticScopeFactory;
            invokevirtual org.jruby.parser.StaticScopeFactory.getDummyScope:()Lorg/jruby/parser/StaticScope;
            aload 4 /* signature */
            aload 0 /* this */
            getfield org.jruby.RubyMethod.entry:Lorg/jruby/runtime/callsite/CacheEntry;
            aload 5 /* argsDesc */
         9: .line 236
            aload 0 /* this */
            getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.originModule:Lorg/jruby/RubyModule;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.originName:Ljava/lang/String;
            aload 0 /* this */
            invokevirtual org.jruby.RubyMethod.getFilename:()Ljava/lang/String;
            iload 6 /* line */
            iconst_m1
            if_icmpne 10
            iconst_m1
            goto 11
      StackMap locals: org.jruby.RubyMethod org.jruby.runtime.ThreadContext org.jruby.Ruby top org.jruby.runtime.Signature org.jruby.runtime.ArgumentDescriptor[] int
      StackMap stack: new 8 new 8 org.jruby.parser.StaticScope org.jruby.runtime.Signature org.jruby.runtime.callsite.CacheEntry org.jruby.runtime.ArgumentDescriptor[] org.jruby.runtime.builtin.IRubyObject org.jruby.RubyModule java.lang.String java.lang.String
        10: iload 6 /* line */
            iconst_1
            isub
        11: .line 235
      StackMap locals: org.jruby.RubyMethod org.jruby.runtime.ThreadContext org.jruby.Ruby top org.jruby.runtime.Signature org.jruby.runtime.ArgumentDescriptor[] int
      StackMap stack: new 8 new 8 org.jruby.parser.StaticScope org.jruby.runtime.Signature org.jruby.runtime.callsite.CacheEntry org.jruby.runtime.ArgumentDescriptor[] org.jruby.runtime.builtin.IRubyObject org.jruby.RubyModule java.lang.String java.lang.String int
            invokespecial org.jruby.runtime.MethodBlockBody.<init>:(Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/Signature;Lorg/jruby/runtime/callsite/CacheEntry;[Lorg/jruby/runtime/ArgumentDescriptor;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Ljava/lang/String;I)V
            astore 3 /* body */
        start local 3 // org.jruby.runtime.MethodBlockBody body
        12: .line 237
            aload 3 /* body */
            invokestatic org.jruby.runtime.MethodBlockBody.createMethodBlock:(Lorg/jruby/runtime/MethodBlockBody;)Lorg/jruby/runtime/Block;
            astore 7 /* b */
        start local 7 // org.jruby.runtime.Block b
        13: .line 239
            aload 2 /* runtime */
            aload 7 /* b */
            getstatic org.jruby.runtime.Block$Type.LAMBDA:Lorg/jruby/runtime/Block$Type;
            invokestatic org.jruby.RubyProc.newProc:(Lorg/jruby/Ruby;Lorg/jruby/runtime/Block;Lorg/jruby/runtime/Block$Type;)Lorg/jruby/RubyProc;
            areturn
        end local 7 // org.jruby.runtime.Block b
        end local 6 // int line
        end local 5 // org.jruby.runtime.ArgumentDescriptor[] argsDesc
        end local 4 // org.jruby.runtime.Signature signature
        end local 3 // org.jruby.runtime.MethodBlockBody body
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   14     0       this  Lorg/jruby/RubyMethod;
            0   14     1    context  Lorg/jruby/runtime/ThreadContext;
            1   14     2    runtime  Lorg/jruby/Ruby;
           12   14     3       body  Lorg/jruby/runtime/MethodBlockBody;
            3    5     4  signature  Lorg/jruby/runtime/Signature;
            6   14     4  signature  Lorg/jruby/runtime/Signature;
            4    5     5   argsDesc  [Lorg/jruby/runtime/ArgumentDescriptor;
            7   14     5   argsDesc  [Lorg/jruby/runtime/ArgumentDescriptor;
            8   14     6       line  I
           13   14     7          b  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.RubyUnboundMethod unbind();
    descriptor: ()Lorg/jruby/RubyUnboundMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.jruby.RubyMethod this
         0: .line 245
            aload 0 /* this */
            getfield org.jruby.RubyMethod.implementationModule:Lorg/jruby/RubyModule;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.originModule:Lorg/jruby/RubyModule;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.originName:Ljava/lang/String;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.entry:Lorg/jruby/runtime/callsite/CacheEntry;
            invokestatic org.jruby.RubyUnboundMethod.newUnboundMethod:(Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/callsite/CacheEntry;)Lorg/jruby/RubyUnboundMethod;
         1: .line 244
            astore 1 /* unboundMethod */
        start local 1 // org.jruby.RubyUnboundMethod unboundMethod
         2: .line 246
            aload 1 /* unboundMethod */
            aload 0 /* this */
            invokevirtual org.jruby.RubyUnboundMethod.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
            pop
         3: .line 248
            aload 1 /* unboundMethod */
            areturn
        end local 1 // org.jruby.RubyUnboundMethod unboundMethod
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lorg/jruby/RubyMethod;
            2    4     1  unboundMethod  Lorg/jruby/RubyUnboundMethod;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()

  public org.jruby.runtime.builtin.IRubyObject inspect();
    descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=8, args_size=1
        start local 0 // org.jruby.RubyMethod this
         0: .line 254
            aload 0 /* this */
            invokevirtual org.jruby.RubyMethod.getRuntime:()Lorg/jruby/Ruby;
            astore 1 /* runtime */
        start local 1 // org.jruby.Ruby runtime
         1: .line 255
            aload 1 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            astore 2 /* context */
        start local 2 // org.jruby.runtime.ThreadContext context
         2: .line 257
            aload 1 /* runtime */
            ldc "#<"
            invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyString;
            astore 3 /* str */
        start local 3 // org.jruby.RubyString str
         3: .line 258
            ldc "#"
            astore 4 /* sharp */
        start local 4 // java.lang.String sharp
         4: .line 260
            aload 3 /* str */
            aload 0 /* this */
            invokevirtual org.jruby.RubyMethod.getType:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.getName:()Ljava/lang/String;
            invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            ldc ": "
            invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            pop
         5: .line 263
            aload 0 /* this */
            getfield org.jruby.RubyMethod.originModule:Lorg/jruby/RubyModule;
            astore 6 /* mklass */
        start local 6 // org.jruby.RubyModule mklass
         6: .line 265
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            instanceof org.jruby.internal.runtime.methods.AliasMethod
            ifne 7
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            instanceof org.jruby.internal.runtime.methods.DelegatingDynamicMethod
            ifeq 9
         7: .line 266
      StackMap locals: org.jruby.RubyMethod org.jruby.Ruby org.jruby.runtime.ThreadContext org.jruby.RubyString java.lang.String top org.jruby.RubyModule
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getDefinedClass:()Lorg/jruby/RubyModule;
            astore 5 /* definedClass */
        start local 5 // org.jruby.RubyModule definedClass
         8: .line 267
            goto 10
        end local 5 // org.jruby.RubyModule definedClass
         9: .line 269
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getDefinedClass:()Lorg/jruby/RubyModule;
            astore 5 /* definedClass */
        start local 5 // org.jruby.RubyModule definedClass
        10: .line 272
      StackMap locals: org.jruby.RubyMethod org.jruby.Ruby org.jruby.runtime.ThreadContext org.jruby.RubyString java.lang.String org.jruby.RubyModule org.jruby.RubyModule
      StackMap stack:
            aload 5 /* definedClass */
            invokevirtual org.jruby.RubyModule.isIncluded:()Z
            ifeq 12
        11: .line 273
            aload 5 /* definedClass */
            invokevirtual org.jruby.RubyModule.getMetaClass:()Lorg/jruby/RubyClass;
            astore 5 /* definedClass */
        12: .line 276
      StackMap locals:
      StackMap stack:
            aload 6 /* mklass */
            invokevirtual org.jruby.RubyModule.isSingleton:()Z
            ifeq 27
        13: .line 277
            aload 6 /* mklass */
            checkcast org.jruby.MetaClass
            invokevirtual org.jruby.MetaClass.getAttached:()Lorg/jruby/RubyBasicObject;
            astore 7 /* attached */
        start local 7 // org.jruby.runtime.builtin.IRubyObject attached
        14: .line 278
            aload 0 /* this */
            getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
            ifnonnull 17
        15: .line 279
            aload 3 /* str */
            aload 2 /* context */
            aload 6 /* mklass */
            invokestatic org.jruby.RubyMethod.inspect:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.convertToString:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.cat19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
            pop
        16: .line 280
            goto 32
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
        17: aload 0 /* this */
            getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
            aload 7 /* attached */
            if_acmpne 21
        18: .line 281
            aload 3 /* str */
            aload 2 /* context */
            aload 7 /* attached */
            invokestatic org.jruby.RubyMethod.inspect:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.convertToString:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.cat19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
            pop
        19: .line 282
            ldc "."
            astore 4 /* sharp */
        20: .line 283
            goto 32
        21: .line 284
      StackMap locals:
      StackMap stack:
            aload 3 /* str */
            aload 2 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyMethod.inspect:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.convertToString:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.cat19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
            pop
        22: .line 285
            aload 3 /* str */
            ldc "("
            invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            pop
        23: .line 286
            aload 3 /* str */
            aload 2 /* context */
            aload 7 /* attached */
            invokestatic org.jruby.RubyMethod.inspect:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.convertToString:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.cat19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
            pop
        24: .line 287
            aload 3 /* str */
            ldc ")"
            invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            pop
        25: .line 288
            ldc "."
            astore 4 /* sharp */
        end local 7 // org.jruby.runtime.builtin.IRubyObject attached
        26: .line 290
            goto 32
        27: .line 291
      StackMap locals:
      StackMap stack:
            aload 3 /* str */
            aload 6 /* mklass */
            invokevirtual org.jruby.RubyModule.getName:()Ljava/lang/String;
            invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            pop
        28: .line 292
            aload 5 /* definedClass */
            aload 6 /* mklass */
            if_acmpeq 32
        29: .line 293
            aload 3 /* str */
            ldc "("
            invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            pop
        30: .line 294
            aload 3 /* str */
            aload 5 /* definedClass */
            invokevirtual org.jruby.RubyModule.getName:()Ljava/lang/String;
            invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            pop
        31: .line 295
            aload 3 /* str */
            ldc ")"
            invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            pop
        32: .line 298
      StackMap locals:
      StackMap stack:
            aload 3 /* str */
            aload 4 /* sharp */
            invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            pop
        33: .line 299
            aload 3 /* str */
            aload 0 /* this */
            getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
            invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            pop
        34: .line 300
            aload 0 /* this */
            getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 38
        35: .line 301
            aload 3 /* str */
            ldc "("
            invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            pop
        36: .line 302
            aload 3 /* str */
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getName:()Ljava/lang/String;
            invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            pop
        37: .line 303
            aload 3 /* str */
            ldc ")"
            invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            pop
        38: .line 305
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.isNotImplemented:()Z
            ifeq 40
        39: .line 306
            aload 3 /* str */
            ldc " (not-implemented)"
            invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            pop
        40: .line 308
      StackMap locals:
      StackMap stack:
            aload 3 /* str */
            ldc ">"
            invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            pop
        41: .line 310
            aload 3 /* str */
            areturn
        end local 6 // org.jruby.RubyModule mklass
        end local 5 // org.jruby.RubyModule definedClass
        end local 4 // java.lang.String sharp
        end local 3 // org.jruby.RubyString str
        end local 2 // org.jruby.runtime.ThreadContext context
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   42     0          this  Lorg/jruby/RubyMethod;
            1   42     1       runtime  Lorg/jruby/Ruby;
            2   42     2       context  Lorg/jruby/runtime/ThreadContext;
            3   42     3           str  Lorg/jruby/RubyString;
            4   42     4         sharp  Ljava/lang/String;
            8    9     5  definedClass  Lorg/jruby/RubyModule;
           10   42     5  definedClass  Lorg/jruby/RubyModule;
            6   42     6        mklass  Lorg/jruby/RubyModule;
           14   26     7      attached  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"inspect", "to_s"})

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

  public org.jruby.runtime.builtin.IRubyObject source_location(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.jruby.RubyMethod this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 320
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 322
            aload 0 /* this */
            invokevirtual org.jruby.RubyMethod.getFilename:()Ljava/lang/String;
            astore 3 /* filename */
        start local 3 // java.lang.String filename
         2: .line 323
            aload 3 /* filename */
            ifnull 4
         3: .line 324
            aload 2 /* runtime */
            aload 2 /* runtime */
            aload 3 /* filename */
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            aload 2 /* runtime */
            aload 0 /* this */
            invokevirtual org.jruby.RubyMethod.getLine:()I
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            invokevirtual org.jruby.Ruby.newArray:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
         4: .line 327
      StackMap locals: org.jruby.Ruby java.lang.String
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // java.lang.String filename
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/jruby/RubyMethod;
            0    5     1   context  Lorg/jruby/runtime/ThreadContext;
            1    5     2   runtime  Lorg/jruby/Ruby;
            2    5     3  filename  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public java.lang.String getFilename();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=1
        start local 0 // org.jruby.RubyMethod this
         0: .line 331
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
            astore 1 /* realMethod */
        start local 1 // org.jruby.internal.runtime.methods.DynamicMethod realMethod
         1: .line 332
            aload 1 /* realMethod */
            instanceof org.jruby.runtime.PositionAware
            ifeq 4
         2: .line 333
            aload 1 /* realMethod */
            checkcast org.jruby.runtime.PositionAware
            astore 2 /* poser */
        start local 2 // org.jruby.runtime.PositionAware poser
         3: .line 334
            aload 2 /* poser */
            invokeinterface org.jruby.runtime.PositionAware.getFile:()Ljava/lang/String;
            areturn
        end local 2 // org.jruby.runtime.PositionAware poser
         4: .line 336
      StackMap locals: org.jruby.internal.runtime.methods.DynamicMethod
      StackMap stack:
            aconst_null
            areturn
        end local 1 // org.jruby.internal.runtime.methods.DynamicMethod realMethod
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/jruby/RubyMethod;
            1    5     1  realMethod  Lorg/jruby/internal/runtime/methods/DynamicMethod;
            3    4     2       poser  Lorg/jruby/runtime/PositionAware;

  public int getLine();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.jruby.RubyMethod this
         0: .line 340
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
            astore 1 /* realMethod */
        start local 1 // org.jruby.internal.runtime.methods.DynamicMethod realMethod
         1: .line 341
            aload 1 /* realMethod */
            instanceof org.jruby.runtime.PositionAware
            ifeq 4
         2: .line 342
            aload 1 /* realMethod */
            checkcast org.jruby.runtime.PositionAware
            astore 2 /* poser */
        start local 2 // org.jruby.runtime.PositionAware poser
         3: .line 343
            aload 2 /* poser */
            invokeinterface org.jruby.runtime.PositionAware.getLine:()I
            iconst_1
            iadd
            ireturn
        end local 2 // org.jruby.runtime.PositionAware poser
         4: .line 345
      StackMap locals: org.jruby.internal.runtime.methods.DynamicMethod
      StackMap stack:
            iconst_m1
            ireturn
        end local 1 // org.jruby.internal.runtime.methods.DynamicMethod realMethod
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/jruby/RubyMethod;
            1    5     1  realMethod  Lorg/jruby/internal/runtime/methods/DynamicMethod;
            3    4     2       poser  Lorg/jruby/runtime/PositionAware;

  public org.jruby.runtime.builtin.IRubyObject parameters(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.RubyMethod this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 350
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokestatic org.jruby.runtime.Helpers.methodToParameters:(Lorg/jruby/Ruby;Lorg/jruby/AbstractRubyMethod;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyMethod;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject curry(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.RubyMethod this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 355
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyMethod.to_proc:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            aload 1 /* context */
            ldc "curry"
            aload 2 /* args */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyMethod;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(optional = 1)
    MethodParameters:
         Name  Flags
      context  
      args     

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

  public org.jruby.runtime.builtin.IRubyObject original_name(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.RubyMethod this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 365
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            instanceof org.jruby.internal.runtime.methods.AliasMethod
            ifeq 2
         1: .line 366
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            checkcast org.jruby.internal.runtime.methods.AliasMethod
            invokevirtual org.jruby.internal.runtime.methods.AliasMethod.getOldName:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            areturn
         2: .line 368
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyMethod.name:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyMethod this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyMethod;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.AbstractRubyMethod rbClone();
    descriptor: ()Lorg/jruby/AbstractRubyMethod;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.jruby.RubyMethod.rbClone:()Lorg/jruby/RubyMethod;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public org.jruby.runtime.builtin.IRubyObject rbClone();
    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.RubyMethod.rbClone:()Lorg/jruby/RubyMethod;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public org.jruby.runtime.builtin.IRubyObject op_equal(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (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.RubyMethod.op_equal:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyBoolean;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "RubyMethod.java"
InnerClasses:
  public RespondToMissingMethod = org.jruby.RubyModule$RespondToMissingMethod of org.jruby.RubyModule
  public final Type = org.jruby.runtime.Block$Type of org.jruby.runtime.Block
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyClass(name = {"Method"})