class com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper extends com.sun.tools.javac.comp.Resolve$ReferenceLookupHelper
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper
  super_class: com.sun.tools.javac.comp.Resolve$ReferenceLookupHelper
{
  com.sun.tools.javac.code.Type originalSite;
    descriptor: Lcom/sun/tools/javac/code/Type;
    flags: (0x0000) 

  final com.sun.tools.javac.comp.Resolve this$0;
    descriptor: Lcom/sun/tools/javac/comp/Resolve;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(com.sun.tools.javac.tree.JCTree$JCMemberReference, com.sun.tools.javac.util.Name, com.sun.tools.javac.code.Type, com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>, com.sun.tools.javac.util.List<com.sun.tools.javac.code.Type>, com.sun.tools.javac.comp.Resolve$MethodResolutionPhase);
    descriptor: (Lcom/sun/tools/javac/comp/Resolve;Lcom/sun/tools/javac/tree/JCTree$JCMemberReference;Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/comp/Resolve$MethodResolutionPhase;)V
    flags: (0x0000) 
    Code:
      stack=8, locals=8, args_size=8
        start local 0 // com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper this
        start local 2 // com.sun.tools.javac.tree.JCTree$JCMemberReference referenceTree
        start local 3 // com.sun.tools.javac.util.Name name
        start local 4 // com.sun.tools.javac.code.Type site
        start local 5 // com.sun.tools.javac.util.List argtypes
        start local 6 // com.sun.tools.javac.util.List typeargtypes
        start local 7 // com.sun.tools.javac.comp.Resolve$MethodResolutionPhase maxPhase
         0: .line 3397
            aload 0 /* this */
            aload 1
            putfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.this$0:Lcom/sun/tools/javac/comp/Resolve;
         1: .line 3398
            aload 0 /* this */
            aload 1
            aload 2 /* referenceTree */
            aload 3 /* name */
            aload 1
            getfield com.sun.tools.javac.comp.Resolve.types:Lcom/sun/tools/javac/code/Types;
            aload 4 /* site */
            iconst_1
            invokevirtual com.sun.tools.javac.code.Types.skipTypeVars:(Lcom/sun/tools/javac/code/Type;Z)Lcom/sun/tools/javac/code/Type;
            aload 5 /* argtypes */
            aload 6 /* typeargtypes */
            aload 7 /* maxPhase */
            invokespecial com.sun.tools.javac.comp.Resolve$ReferenceLookupHelper.<init>:(Lcom/sun/tools/javac/comp/Resolve;Lcom/sun/tools/javac/tree/JCTree$JCMemberReference;Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/comp/Resolve$MethodResolutionPhase;)V
         2: .line 3399
            aload 0 /* this */
            aload 4 /* site */
            putfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.originalSite:Lcom/sun/tools/javac/code/Type;
         3: .line 3400
            return
        end local 7 // com.sun.tools.javac.comp.Resolve$MethodResolutionPhase maxPhase
        end local 6 // com.sun.tools.javac.util.List typeargtypes
        end local 5 // com.sun.tools.javac.util.List argtypes
        end local 4 // com.sun.tools.javac.code.Type site
        end local 3 // com.sun.tools.javac.util.Name name
        end local 2 // com.sun.tools.javac.tree.JCTree$JCMemberReference referenceTree
        end local 0 // com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lcom/sun/tools/javac/comp/Resolve$MethodReferenceLookupHelper;
            0    4     2  referenceTree  Lcom/sun/tools/javac/tree/JCTree$JCMemberReference;
            0    4     3           name  Lcom/sun/tools/javac/util/Name;
            0    4     4           site  Lcom/sun/tools/javac/code/Type;
            0    4     5       argtypes  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
            0    4     6   typeargtypes  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
            0    4     7       maxPhase  Lcom/sun/tools/javac/comp/Resolve$MethodResolutionPhase;
    Signature: (Lcom/sun/tools/javac/tree/JCTree$JCMemberReference;Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;Lcom/sun/tools/javac/comp/Resolve$MethodResolutionPhase;)V
    MethodParameters:
               Name  Flags
      this$0         final
      referenceTree  
      name           
      site           
      argtypes       
      typeargtypes   
      maxPhase       

  final com.sun.tools.javac.code.Symbol lookup(com.sun.tools.javac.comp.Env<com.sun.tools.javac.comp.AttrContext>, com.sun.tools.javac.comp.Resolve$MethodResolutionPhase);
    descriptor: (Lcom/sun/tools/javac/comp/Env;Lcom/sun/tools/javac/comp/Resolve$MethodResolutionPhase;)Lcom/sun/tools/javac/code/Symbol;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=8, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper this
        start local 1 // com.sun.tools.javac.comp.Env env
        start local 2 // com.sun.tools.javac.comp.Resolve$MethodResolutionPhase phase
         0: .line 3404
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.this$0:Lcom/sun/tools/javac/comp/Resolve;
            aload 1 /* env */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.site:Lcom/sun/tools/javac/code/Type;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.name:Lcom/sun/tools/javac/util/Name;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.argtypes:Lcom/sun/tools/javac/util/List;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.typeargtypes:Lcom/sun/tools/javac/util/List;
         1: .line 3405
            aload 2 /* phase */
            invokevirtual com.sun.tools.javac.comp.Resolve$MethodResolutionPhase.isBoxingRequired:()Z
            aload 2 /* phase */
            invokevirtual com.sun.tools.javac.comp.Resolve$MethodResolutionPhase.isVarargsRequired:()Z
         2: .line 3404
            invokevirtual com.sun.tools.javac.comp.Resolve.findMethod:(Lcom/sun/tools/javac/comp/Env;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;ZZ)Lcom/sun/tools/javac/code/Symbol;
            areturn
        end local 2 // com.sun.tools.javac.comp.Resolve$MethodResolutionPhase phase
        end local 1 // com.sun.tools.javac.comp.Env env
        end local 0 // com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/sun/tools/javac/comp/Resolve$MethodReferenceLookupHelper;
            0    3     1    env  Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;
            0    3     2  phase  Lcom/sun/tools/javac/comp/Resolve$MethodResolutionPhase;
    Signature: (Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;Lcom/sun/tools/javac/comp/Resolve$MethodResolutionPhase;)Lcom/sun/tools/javac/code/Symbol;
    MethodParameters:
       Name  Flags
      env    
      phase  

  com.sun.tools.javac.comp.Resolve$ReferenceLookupHelper unboundLookup(com.sun.tools.javac.comp.InferenceContext);
    descriptor: (Lcom/sun/tools/javac/comp/InferenceContext;)Lcom/sun/tools/javac/comp/Resolve$ReferenceLookupHelper;
    flags: (0x0000) 
    Code:
      stack=10, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper this
        start local 1 // com.sun.tools.javac.comp.InferenceContext inferenceContext
         0: .line 3410
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.referenceTree:Lcom/sun/tools/javac/tree/JCTree$JCMemberReference;
            getfield com.sun.tools.javac.tree.JCTree$JCMemberReference.expr:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.this$0:Lcom/sun/tools/javac/comp/Resolve;
            getfield com.sun.tools.javac.comp.Resolve.names:Lcom/sun/tools/javac/util/Names;
            invokestatic com.sun.tools.javac.tree.TreeInfo.isStaticSelector:(Lcom/sun/tools/javac/tree/JCTree;Lcom/sun/tools/javac/util/Names;)Z
            ifeq 8
         1: .line 3411
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.argtypes:Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
            ifeq 7
         2: .line 3412
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.argtypes:Lcom/sun/tools/javac/util/List;
            getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Type
            getstatic com.sun.tools.javac.code.TypeTag.NONE:Lcom/sun/tools/javac/code/TypeTag;
            invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
            ifne 4
         3: .line 3413
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.this$0:Lcom/sun/tools/javac/comp/Resolve;
            getfield com.sun.tools.javac.comp.Resolve.types:Lcom/sun/tools/javac/code/Types;
            aload 1 /* inferenceContext */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.argtypes:Lcom/sun/tools/javac/util/List;
            getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Type
            invokevirtual com.sun.tools.javac.comp.InferenceContext.asUndetVar:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.originalSite:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Types.isSubtypeUnchecked:(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Type;)Z
            ifeq 7
         4: .line 3414
      StackMap locals:
      StackMap stack:
            new com.sun.tools.javac.comp.Resolve$UnboundMethodReferenceLookupHelper
            dup
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.this$0:Lcom/sun/tools/javac/comp/Resolve;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.referenceTree:Lcom/sun/tools/javac/tree/JCTree$JCMemberReference;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.name:Lcom/sun/tools/javac/util/Name;
         5: .line 3415
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.originalSite:Lcom/sun/tools/javac/code/Type;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.argtypes:Lcom/sun/tools/javac/util/List;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.typeargtypes:Lcom/sun/tools/javac/util/List;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.maxPhase:Lcom/sun/tools/javac/comp/Resolve$MethodResolutionPhase;
         6: .line 3414
            invokespecial com.sun.tools.javac.comp.Resolve$UnboundMethodReferenceLookupHelper.<init>:(Lcom/sun/tools/javac/comp/Resolve;Lcom/sun/tools/javac/tree/JCTree$JCMemberReference;Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/comp/Resolve$MethodResolutionPhase;)V
            areturn
         7: .line 3417
      StackMap locals:
      StackMap stack:
            new com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper$1
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.this$0:Lcom/sun/tools/javac/comp/Resolve;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.referenceTree:Lcom/sun/tools/javac/tree/JCTree$JCMemberReference;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.name:Lcom/sun/tools/javac/util/Name;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.site:Lcom/sun/tools/javac/code/Type;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.argtypes:Lcom/sun/tools/javac/util/List;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.typeargtypes:Lcom/sun/tools/javac/util/List;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.maxPhase:Lcom/sun/tools/javac/comp/Resolve$MethodResolutionPhase;
            invokespecial com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper$1.<init>:(Lcom/sun/tools/javac/comp/Resolve$MethodReferenceLookupHelper;Lcom/sun/tools/javac/comp/Resolve;Lcom/sun/tools/javac/tree/JCTree$JCMemberReference;Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/comp/Resolve$MethodResolutionPhase;)V
            areturn
         8: .line 3436
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* inferenceContext */
            invokespecial com.sun.tools.javac.comp.Resolve$ReferenceLookupHelper.unboundLookup:(Lcom/sun/tools/javac/comp/InferenceContext;)Lcom/sun/tools/javac/comp/Resolve$ReferenceLookupHelper;
            areturn
        end local 1 // com.sun.tools.javac.comp.InferenceContext inferenceContext
        end local 0 // com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    9     0              this  Lcom/sun/tools/javac/comp/Resolve$MethodReferenceLookupHelper;
            0    9     1  inferenceContext  Lcom/sun/tools/javac/comp/InferenceContext;
    MethodParameters:
                  Name  Flags
      inferenceContext  

  com.sun.tools.javac.tree.JCTree$JCMemberReference$ReferenceKind referenceKind(com.sun.tools.javac.code.Symbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/tree/JCTree$JCMemberReference$ReferenceKind;
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper this
        start local 1 // com.sun.tools.javac.code.Symbol sym
         0: .line 3442
            aload 1 /* sym */
            invokevirtual com.sun.tools.javac.code.Symbol.isStatic:()Z
            ifeq 2
         1: .line 3443
            getstatic com.sun.tools.javac.tree.JCTree$JCMemberReference$ReferenceKind.STATIC:Lcom/sun/tools/javac/tree/JCTree$JCMemberReference$ReferenceKind;
            areturn
         2: .line 3445
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.referenceTree:Lcom/sun/tools/javac/tree/JCTree$JCMemberReference;
            invokevirtual com.sun.tools.javac.tree.JCTree$JCMemberReference.getQualifierExpression:()Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            invokestatic com.sun.tools.javac.tree.TreeInfo.name:(Lcom/sun/tools/javac/tree/JCTree;)Lcom/sun/tools/javac/util/Name;
            astore 2 /* selName */
        start local 2 // com.sun.tools.javac.util.Name selName
         3: .line 3446
            aload 2 /* selName */
            ifnull 5
            aload 2 /* selName */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.this$0:Lcom/sun/tools/javac/comp/Resolve;
            getfield com.sun.tools.javac.comp.Resolve.names:Lcom/sun/tools/javac/util/Names;
            getfield com.sun.tools.javac.util.Names._super:Lcom/sun/tools/javac/util/Name;
            if_acmpne 5
         4: .line 3447
            getstatic com.sun.tools.javac.tree.JCTree$JCMemberReference$ReferenceKind.SUPER:Lcom/sun/tools/javac/tree/JCTree$JCMemberReference$ReferenceKind;
            goto 6
         5: .line 3448
      StackMap locals: com.sun.tools.javac.util.Name
      StackMap stack:
            getstatic com.sun.tools.javac.tree.JCTree$JCMemberReference$ReferenceKind.BOUND:Lcom/sun/tools/javac/tree/JCTree$JCMemberReference$ReferenceKind;
         6: .line 3446
      StackMap locals:
      StackMap stack: com.sun.tools.javac.tree.JCTree$JCMemberReference$ReferenceKind
            areturn
        end local 2 // com.sun.tools.javac.util.Name selName
        end local 1 // com.sun.tools.javac.code.Symbol sym
        end local 0 // com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lcom/sun/tools/javac/comp/Resolve$MethodReferenceLookupHelper;
            0    7     1      sym  Lcom/sun/tools/javac/code/Symbol;
            3    7     2  selName  Lcom/sun/tools/javac/util/Name;
    MethodParameters:
      Name  Flags
      sym   

  static com.sun.tools.javac.comp.Resolve access$0(com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper);
    descriptor: (Lcom/sun/tools/javac/comp/Resolve$MethodReferenceLookupHelper;)Lcom/sun/tools/javac/comp/Resolve;
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 3391
            aload 0
            getfield com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper.this$0:Lcom/sun/tools/javac/comp/Resolve;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "Resolve.java"
NestHost: com.sun.tools.javac.comp.Resolve
InnerClasses:
  MethodReferenceLookupHelper = com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper of com.sun.tools.javac.comp.Resolve
  com.sun.tools.javac.comp.Resolve$MethodReferenceLookupHelper$1
  MethodResolutionPhase = com.sun.tools.javac.comp.Resolve$MethodResolutionPhase of com.sun.tools.javac.comp.Resolve
  abstract ReferenceLookupHelper = com.sun.tools.javac.comp.Resolve$ReferenceLookupHelper of com.sun.tools.javac.comp.Resolve
  UnboundMethodReferenceLookupHelper = com.sun.tools.javac.comp.Resolve$UnboundMethodReferenceLookupHelper of com.sun.tools.javac.comp.Resolve
  public abstract JCExpression = com.sun.tools.javac.tree.JCTree$JCExpression of com.sun.tools.javac.tree.JCTree
  public JCMemberReference = com.sun.tools.javac.tree.JCTree$JCMemberReference of com.sun.tools.javac.tree.JCTree
  public final ReferenceKind = com.sun.tools.javac.tree.JCTree$JCMemberReference$ReferenceKind of com.sun.tools.javac.tree.JCTree$JCMemberReference